Compare commits
10 commits
b60e438b06
...
c1819f18c0
Author | SHA1 | Date | |
---|---|---|---|
|
c1819f18c0 | ||
|
d8d0995fb7 | ||
|
8d6175da85 | ||
|
ee8871c046 | ||
|
705b3c7c9f | ||
|
d07de2ea5f | ||
|
575252ee75 | ||
|
c1152e1336 | ||
|
d074f4786e | ||
|
9b1b209c88 |
4 changed files with 20 additions and 20 deletions
|
@ -1,3 +1,2 @@
|
||||||
|
custom: ["https://lukesmith.xyz/donate.html"]
|
||||||
github: lukesmithxyz
|
github: lukesmithxyz
|
||||||
custom: ["https://lukesmith.xyz/donate", "https://paypal.me/lukemsmith", "https://lukesmith.xyz/crypto"]
|
|
||||||
patreon: lukesmith
|
|
||||||
|
|
|
@ -4,13 +4,11 @@ Extra stuff added to vanilla dmenu:
|
||||||
|
|
||||||
- reads Xresources (ergo pywal compatible)
|
- reads Xresources (ergo pywal compatible)
|
||||||
- alpha patch, which importantly allows this build to be embedded in transparent st
|
- alpha patch, which importantly allows this build to be embedded in transparent st
|
||||||
- can view color characters like emoji (libxft-bgra is required for this reason)
|
- can view color characters like emoji
|
||||||
- `-P` for password mode: hide user input
|
- `-P` for password mode: hide user input
|
||||||
- `-r` to reject non-matching input
|
- `-r` to reject non-matching input
|
||||||
- dmenu options are mouse clickable
|
- dmenu options are mouse clickable
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
You must have `libxft-bgra` installed until the libxft upstream is fixed.
|
|
||||||
|
|
||||||
After making any config changes that you want, but `make`, `sudo make install` it.
|
After making any config changes that you want, but `make`, `sudo make install` it.
|
||||||
|
|
3
config.h
3
config.h
|
@ -5,7 +5,7 @@ static int topbar = 1; /* -b option; if 0, dmenu appears a
|
||||||
/* -fn option overrides fonts[0]; default X11 font or font set */
|
/* -fn option overrides fonts[0]; default X11 font or font set */
|
||||||
static const char *fonts[] = {
|
static const char *fonts[] = {
|
||||||
"monospace:size=10",
|
"monospace:size=10",
|
||||||
"JoyPixels:pixelsize=8:antialias=true:autohint=true"
|
"NotoColorEmoji:pixelsize=8:antialias=true:autohint=true"
|
||||||
};
|
};
|
||||||
static const unsigned int bgalpha = 0xe0;
|
static const unsigned int bgalpha = 0xe0;
|
||||||
static const unsigned int fgalpha = OPAQUE;
|
static const unsigned int fgalpha = OPAQUE;
|
||||||
|
@ -31,3 +31,4 @@ static unsigned int lines = 0;
|
||||||
* for example: " /?\"&[]"
|
* for example: " /?\"&[]"
|
||||||
*/
|
*/
|
||||||
static const char worddelimiters[] = " ";
|
static const char worddelimiters[] = " ";
|
||||||
|
|
||||||
|
|
30
dmenu.c
30
dmenu.c
|
@ -918,6 +918,21 @@ main(int argc, char *argv[])
|
||||||
XWindowAttributes wa;
|
XWindowAttributes wa;
|
||||||
int i, fast = 0;
|
int i, fast = 0;
|
||||||
|
|
||||||
|
if (!setlocale(LC_CTYPE, "") || !XSupportsLocale())
|
||||||
|
fputs("warning: no locale support\n", stderr);
|
||||||
|
if (!(dpy = XOpenDisplay(NULL)))
|
||||||
|
die("cannot open display");
|
||||||
|
screen = DefaultScreen(dpy);
|
||||||
|
root = RootWindow(dpy, screen);
|
||||||
|
if (!embed || !(parentwin = strtol(embed, NULL, 0)))
|
||||||
|
parentwin = root;
|
||||||
|
if (!XGetWindowAttributes(dpy, parentwin, &wa))
|
||||||
|
die("could not get embedding window attributes: 0x%lx",
|
||||||
|
parentwin);
|
||||||
|
xinitvisual();
|
||||||
|
drw = drw_create(dpy, screen, root, wa.width, wa.height, visual, depth, cmap);
|
||||||
|
read_Xresources();
|
||||||
|
|
||||||
for (i = 1; i < argc; i++)
|
for (i = 1; i < argc; i++)
|
||||||
/* these options take no arguments */
|
/* these options take no arguments */
|
||||||
if (!strcmp(argv[i], "-v")) { /* prints version information */
|
if (!strcmp(argv[i], "-v")) { /* prints version information */
|
||||||
|
@ -958,20 +973,6 @@ main(int argc, char *argv[])
|
||||||
else
|
else
|
||||||
usage();
|
usage();
|
||||||
|
|
||||||
if (!setlocale(LC_CTYPE, "") || !XSupportsLocale())
|
|
||||||
fputs("warning: no locale support\n", stderr);
|
|
||||||
if (!(dpy = XOpenDisplay(NULL)))
|
|
||||||
die("cannot open display");
|
|
||||||
screen = DefaultScreen(dpy);
|
|
||||||
root = RootWindow(dpy, screen);
|
|
||||||
if (!embed || !(parentwin = strtol(embed, NULL, 0)))
|
|
||||||
parentwin = root;
|
|
||||||
if (!XGetWindowAttributes(dpy, parentwin, &wa))
|
|
||||||
die("could not get embedding window attributes: 0x%lx",
|
|
||||||
parentwin);
|
|
||||||
xinitvisual();
|
|
||||||
drw = drw_create(dpy, screen, root, wa.width, wa.height, visual, depth, cmap);
|
|
||||||
read_Xresources();
|
|
||||||
if (!drw_fontset_create(drw, fonts, LENGTH(fonts)))
|
if (!drw_fontset_create(drw, fonts, LENGTH(fonts)))
|
||||||
die("no fonts could be loaded.");
|
die("no fonts could be loaded.");
|
||||||
lrpad = drw->fonts->h;
|
lrpad = drw->fonts->h;
|
||||||
|
@ -993,3 +994,4 @@ main(int argc, char *argv[])
|
||||||
|
|
||||||
return 1; /* unreachable */
|
return 1; /* unreachable */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue