/* Default settings; can be overriden by command line. */
static int topbar = 1; /* -b option; if 0, dmenu appears at bottom */
+static int fuzzy = 1; /* -F option; if 0, dmenu doesn't use fuzzy matching */
+static const unsigned int alpha = 0xf0;
+static int centered = 1; /* -c option; centers dmenu on screen */
+static int min_width = 500; /* minimum width when centered */
/* -fn option overrides fonts[0]; default X11 font or font set */
static const char *fonts[] = {
"monospace:size=10"
};
static const char *prompt = NULL; /* -p option; prompt to the left of input field */
-static const char *normbgcolor = "#222222"; /* -nb option; normal background */
-static const char *normfgcolor = "#bbbbbb"; /* -nf option; normal foreground */
-static const char *selbgcolor = "#005577"; /* -sb option; selected background */
-static const char *selfgcolor = "#eeeeee"; /* -sf option; selected foreground */
-static const char *outbgcolor = "#00ffff";
-static const char *outfgcolor = "#000000";
+static const char *colors[SchemeLast][2] = {
+ /* fg bg */
+ [SchemeNorm] = { "#bbbbbb", "#222222" },
+ [SchemeSel] = { "#eeeeee", "#005577" },
+ [SchemeOut] = { "#000000", "#00ffff" },
+};
+
+static const unsigned int alphas[SchemeLast][2] = {
+ [SchemeNorm] = { OPAQUE, alpha },
+ [SchemeSel] = { OPAQUE, alpha },
+ [SchemeOut] = { OPAQUE, alpha },
+};
+
/* -l option; if nonzero, dmenu uses vertical list with given number of lines */
-static unsigned int lines = 0;
+static unsigned int lines = 10;
/*
* Characters not considered part of a word while deleting words