10 Commits
1.4 ... 1.6

Author SHA1 Message Date
arg@mig29
c69f397bb9 found compromise 2006-12-07 14:38:31 +01:00
arg@mig29
b9fbd59c8a people should define fixed being compatible with their locale 2006-12-07 12:03:47 +01:00
arg@mig29
da2b90ddd1 using -*-fixed-*-*-*-*-*-*-*-*-*-*-iso10646-* fixed by default 2006-12-07 11:55:46 +01:00
arg@mig29
dd7ee0dae1 also fixing dmenu accordingly 2006-12-07 10:06:06 +01:00
arg@mig29
250aa199bb only setting LC_CTYPE 2006-12-05 13:30:37 +01:00
arg@mig29
5d43e9243c enforcing using imcomplete fonsets anyways 2006-12-05 10:31:20 +01:00
arg@mig29
1026eb8308 Added tag 1.5 for changeset e071fb045bd9e8574947acff7196360bc0270e68 2006-11-30 09:21:14 +01:00
arg@mig29
c65fdd6252 next version will be 1.5 2006-11-26 15:49:47 +01:00
arg@mig29
8c20e5dbd3 fixing sizeof stuff 2006-11-26 15:49:33 +01:00
arg@mig29
26fbf124fa Added tag 1.4 for changeset df3fbb050004c544d14e43c36f6a94cca6ed4a69 2006-10-26 12:14:03 +02:00
5 changed files with 16 additions and 20 deletions

View File

@@ -11,3 +11,5 @@ d046c818ea467555cc338751c9bf3024609f1f12 0.9
e8c1e9733752db12f2dbd1fa93c46f5806242ba9 1.1
bee7fe6d1189174d0204ca3195b83cdc1bb4f82e 1.2
2eb9997be51cb1b11a8900728ccc0904f9371157 1.3
df3fbb050004c544d14e43c36f6a94cca6ed4a69 1.4
e071fb045bd9e8574947acff7196360bc0270e68 1.5

View File

@@ -1,5 +1,5 @@
# dmenu version
VERSION = 1.4
VERSION = 1.6
# Customize below to fit your system

View File

@@ -3,14 +3,13 @@
*/
#include <X11/Xlib.h>
#include <X11/Xlocale.h>
#define FONT "fixed"
#define FONT "-*-fixed-medium-r-normal-*-13-*-*-*-*-*-*-*"
#define NORMBGCOLOR "#333366"
#define NORMFGCOLOR "#cccccc"
#define SELBGCOLOR "#666699"
#define SELFGCOLOR "#eeeeee"
#define SPACE 30 /* px */
#define SPACE 30 /* px */
/* color */
enum { ColFG, ColBG, ColLast };

15
draw.c
View File

@@ -4,7 +4,6 @@
#include "dmenu.h"
#include <stdio.h>
#include <string.h>
#include <X11/Xlocale.h>
/* static */
@@ -35,8 +34,8 @@ drawtext(const char *text, unsigned long col[ColLast]) {
return;
w = 0;
olen = len = strlen(text);
if(len >= sizeof(buf))
len = sizeof(buf) - 1;
if(len >= sizeof buf)
len = sizeof buf - 1;
memcpy(buf, text, len);
buf[len] = 0;
h = dc.font.ascent + dc.font.descent;
@@ -80,21 +79,15 @@ getcolor(const char *colstr) {
void
setfont(const char *fontstr) {
char **missing, *def;
char *def, **missing;
int i, n;
missing = NULL;
setlocale(LC_ALL, "");
if(dc.font.set)
XFreeFontSet(dpy, dc.font.set);
dc.font.set = XCreateFontSet(dpy, fontstr, &missing, &n, &def);
if(missing) {
if(missing)
XFreeStringList(missing);
if(dc.font.set) {
XFreeFontSet(dpy, dc.font.set);
dc.font.set = NULL;
}
}
if(dc.font.set) {
XFontSetExtents *font_extents;
XFontStruct **xfonts;

12
main.c
View File

@@ -5,6 +5,7 @@
#include "dmenu.h"
#include <ctype.h>
#include <locale.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
@@ -144,7 +145,7 @@ kpress(XKeyEvent * e) {
len = strlen(text);
buf[0] = 0;
num = XLookupString(e, buf, sizeof(buf), &ksym, 0);
num = XLookupString(e, buf, sizeof buf, &ksym, 0);
if(IsFunctionKey(ksym) || IsKeypadKey(ksym)
|| IsMiscFunctionKey(ksym) || IsPFKey(ksym)
|| IsPrivateKeypadKey(ksym))
@@ -181,7 +182,7 @@ kpress(XKeyEvent * e) {
case XK_Tab:
if(!sel)
return;
strncpy(text, sel->text, sizeof(text));
strncpy(text, sel->text, sizeof text);
match(text);
break;
case XK_Right:
@@ -221,9 +222,9 @@ kpress(XKeyEvent * e) {
if(num && !iscntrl((int) buf[0])) {
buf[num] = 0;
if(len > 0)
strncat(text, buf, sizeof(text));
strncat(text, buf, sizeof text);
else
strncpy(text, buf, sizeof(text));
strncpy(text, buf, sizeof text);
match(text);
}
}
@@ -238,7 +239,7 @@ readstdin(void) {
Item *i, *new;
i = 0;
while(fgets(buf, sizeof(buf), stdin)) {
while(fgets(buf, sizeof buf, stdin)) {
len = strlen(buf);
if (buf[len - 1] == '\n')
buf[len - 1] = 0;
@@ -309,6 +310,7 @@ main(int argc, char *argv[]) {
}
else
eprint("usage: dmenu [-font <name>] [-{norm,sel}{bg,fg} <color>] [-t <seconds>] [-v]\n", stdout);
setlocale(LC_CTYPE, "");
dpy = XOpenDisplay(0);
if(!dpy)
eprint("dmenu: cannot open display\n");