-
-int
-main(int argc, char *argv[]) {
- int i;
-
- progname = "dmenu";
- for(i = 1; i < argc; i++)
- /* 1-arg flags */
- if(!strcmp(argv[i], "-v")) {
- fputs("dmenu-"VERSION", © 2006-2010 dmenu engineers, see LICENSE for details\n", stdout);
- exit(EXIT_SUCCESS);
- }
- else if(!strcmp(argv[i], "-b"))
- topbar = False;
- else if(!strcmp(argv[i], "-i")) {
- fstrncmp = strncasecmp;
- fstrstr = cistrstr;
- }
- else if(i == argc-1)
- usage();
- /* 2-arg flags */
- else if(!strcmp(argv[i], "-l")) {
- if((lines = atoi(argv[++i])) > 0)
- calcoffsets = calcoffsetsv;
- }
- else if(!strcmp(argv[i], "-p")) {
- prompt = argv[++i];
- promptw = MIN(textw(&dc, prompt), mw/5);
- }
- else if(!strcmp(argv[i], "-fn"))
- font = argv[++i];
- else if(!strcmp(argv[i], "-nb"))
- normbgcolor = argv[++i];
- else if(!strcmp(argv[i], "-nf"))
- normfgcolor = argv[++i];
- else if(!strcmp(argv[i], "-sb"))
- selbgcolor = argv[++i];
- else if(!strcmp(argv[i], "-sf"))
- selfgcolor = argv[++i];
- else
- usage();
-
- if(!setlocale(LC_CTYPE, "") || !XSupportsLocale())
- fputs("dmenu: warning: no locale support\n", stderr);
- if(!(dc.dpy = XOpenDisplay(NULL)))
- eprintf("cannot open display\n");
- screen = DefaultScreen(dc.dpy);
- root = RootWindow(dc.dpy, screen);
- initfont(&dc, font);
-
- readstdin();
- setup();
- run();
-
- return EXIT_FAILURE; /* should not reach */
-}