| 
																	
																	
																	
																 | 
																@ -1,7 +1,6 @@ | 
															
														
														
													
														
															
																 | 
																 | 
																/* See LICENSE file for copyright and license details. */ | 
																 | 
																 | 
																/* See LICENSE file for copyright and license details. */ | 
															
														
														
													
														
															
																 | 
																 | 
																#include <ctype.h> | 
																 | 
																 | 
																#include <ctype.h> | 
															
														
														
													
														
															
																 | 
																 | 
																#include <locale.h> | 
																 | 
																 | 
																#include <locale.h> | 
															
														
														
													
														
															
																 | 
																 | 
																#include <stdbool.h> | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																#include <stdio.h> | 
																 | 
																 | 
																#include <stdio.h> | 
															
														
														
													
														
															
																 | 
																 | 
																#include <stdlib.h> | 
																 | 
																 | 
																#include <stdlib.h> | 
															
														
														
													
														
															
																 | 
																 | 
																#include <string.h> | 
																 | 
																 | 
																#include <string.h> | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -32,7 +31,7 @@ enum { SchemeNorm, SchemeSel, SchemeOut, SchemeLast }; /* color schemes */ | 
															
														
														
													
														
															
																 | 
																 | 
																struct item { | 
																 | 
																 | 
																struct item { | 
															
														
														
													
														
															
																 | 
																 | 
																	char *text; | 
																 | 
																 | 
																	char *text; | 
															
														
														
													
														
															
																 | 
																 | 
																	struct item *left, *right; | 
																 | 
																 | 
																	struct item *left, *right; | 
															
														
														
													
														
															
																 | 
																 | 
																	bool out; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	int out; | 
															
														
														
													
														
															
																 | 
																 | 
																}; | 
																 | 
																 | 
																}; | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																static char text[BUFSIZ] = ""; | 
																 | 
																 | 
																static char text[BUFSIZ] = ""; | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -421,7 +420,7 @@ keypress(XKeyEvent *ev) | 
															
														
														
													
														
															
																 | 
																 | 
																			exit(0); | 
																 | 
																 | 
																			exit(0); | 
															
														
														
													
														
															
																 | 
																 | 
																		} | 
																 | 
																 | 
																		} | 
															
														
														
													
														
															
																 | 
																 | 
																		if (sel) | 
																 | 
																 | 
																		if (sel) | 
															
														
														
													
														
															
																 | 
																 | 
																			sel->out = true; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			sel->out = 1; | 
															
														
														
													
														
															
																 | 
																 | 
																		break; | 
																 | 
																 | 
																		break; | 
															
														
														
													
														
															
																 | 
																 | 
																	case XK_Right: | 
																 | 
																 | 
																	case XK_Right: | 
															
														
														
													
														
															
																 | 
																 | 
																		if (text[cursor] != '\0') { | 
																 | 
																 | 
																		if (text[cursor] != '\0') { | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -480,7 +479,7 @@ readstdin(void) | 
															
														
														
													
														
															
																 | 
																 | 
																			*p = '\0'; | 
																 | 
																 | 
																			*p = '\0'; | 
															
														
														
													
														
															
																 | 
																 | 
																		if (!(items[i].text = strdup(buf))) | 
																 | 
																 | 
																		if (!(items[i].text = strdup(buf))) | 
															
														
														
													
														
															
																 | 
																 | 
																			die("cannot strdup %u bytes:", strlen(buf) + 1); | 
																 | 
																 | 
																			die("cannot strdup %u bytes:", strlen(buf) + 1); | 
															
														
														
													
														
															
																 | 
																 | 
																		items[i].out = false; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																		items[i].out = 0; | 
															
														
														
													
														
															
																 | 
																 | 
																		if (strlen(items[i].text) > max) | 
																 | 
																 | 
																		if (strlen(items[i].text) > max) | 
															
														
														
													
														
															
																 | 
																 | 
																			max = strlen(maxstr = items[i].text); | 
																 | 
																 | 
																			max = strlen(maxstr = items[i].text); | 
															
														
														
													
														
															
																 | 
																 | 
																	} | 
																 | 
																 | 
																	} | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -617,8 +616,7 @@ usage(void) | 
															
														
														
													
														
															
																 | 
																 | 
																int | 
																 | 
																 | 
																int | 
															
														
														
													
														
															
																 | 
																 | 
																main(int argc, char *argv[]) | 
																 | 
																 | 
																main(int argc, char *argv[]) | 
															
														
														
													
														
															
																 | 
																 | 
																{ | 
																 | 
																 | 
																{ | 
															
														
														
													
														
															
																 | 
																 | 
																	bool fast = false; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																	int i; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																	int i, fast = 0; | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																	for (i = 1; i < argc; i++) | 
																 | 
																 | 
																	for (i = 1; i < argc; i++) | 
															
														
														
													
														
															
																 | 
																 | 
																		/* these options take no arguments */ | 
																 | 
																 | 
																		/* these options take no arguments */ | 
															
														
														
													
												
													
														
															
																| 
																	
																	
																	
																		
																			
																		
																	
																 | 
																@ -626,9 +624,9 @@ main(int argc, char *argv[]) | 
															
														
														
													
														
															
																 | 
																 | 
																			puts("dmenu-"VERSION); | 
																 | 
																 | 
																			puts("dmenu-"VERSION); | 
															
														
														
													
														
															
																 | 
																 | 
																			exit(0); | 
																 | 
																 | 
																			exit(0); | 
															
														
														
													
														
															
																 | 
																 | 
																		} else if (!strcmp(argv[i], "-b")) /* appears at the bottom of the screen */ | 
																 | 
																 | 
																		} else if (!strcmp(argv[i], "-b")) /* appears at the bottom of the screen */ | 
															
														
														
													
														
															
																 | 
																 | 
																			topbar = false; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			topbar = 0; | 
															
														
														
													
														
															
																 | 
																 | 
																		else if (!strcmp(argv[i], "-f"))   /* grabs keyboard before reading stdin */ | 
																 | 
																 | 
																		else if (!strcmp(argv[i], "-f"))   /* grabs keyboard before reading stdin */ | 
															
														
														
													
														
															
																 | 
																 | 
																			fast = true; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																			fast = 1; | 
															
														
														
													
														
															
																 | 
																 | 
																		else if (!strcmp(argv[i], "-i")) { /* case-insensitive item matching */ | 
																 | 
																 | 
																		else if (!strcmp(argv[i], "-i")) { /* case-insensitive item matching */ | 
															
														
														
													
														
															
																 | 
																 | 
																			fstrncmp = strncasecmp; | 
																 | 
																 | 
																			fstrncmp = strncasecmp; | 
															
														
														
													
														
															
																 | 
																 | 
																			fstrstr = cistrstr; | 
																 | 
																 | 
																			fstrstr = cistrstr; | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																	
																 | 
																
  |