summaryrefslogtreecommitdiff
path: root/patches/dmenu-caseinsensitive-5.0.diff
diff options
context:
space:
mode:
authorzachir <zachir@librem.one>2021-09-13 22:02:26 -0500
committerzachir <zachir@librem.one>2021-09-13 22:02:26 -0500
commit65aad46129921ce5824dee14e50ef8bfed350a26 (patch)
treeae876d4a1e305aae020313b2b068bfb12dfe8f64 /patches/dmenu-caseinsensitive-5.0.diff
parentf84336a06d7c660ec8864bd04ac2138ff3a54dbc (diff)
dmenu: complete rebase, add new patches plus fix old ones (no xresources)
Diffstat (limited to 'patches/dmenu-caseinsensitive-5.0.diff')
-rw-r--r--patches/dmenu-caseinsensitive-5.0.diff53
1 files changed, 53 insertions, 0 deletions
diff --git a/patches/dmenu-caseinsensitive-5.0.diff b/patches/dmenu-caseinsensitive-5.0.diff
new file mode 100644
index 0000000..f476bc9
--- /dev/null
+++ b/patches/dmenu-caseinsensitive-5.0.diff
@@ -0,0 +1,53 @@
+diff --git a/dmenu.1 b/dmenu.1
+index 323f93c..3e3b31b 100644
+--- a/dmenu.1
++++ b/dmenu.1
+@@ -3,7 +3,7 @@
+ dmenu \- dynamic menu
+ .SH SYNOPSIS
+ .B dmenu
+-.RB [ \-bfiv ]
++.RB [ \-bfsv ]
+ .RB [ \-l
+ .IR lines ]
+ .RB [ \-m
+@@ -44,8 +44,8 @@ dmenu appears at the bottom of the screen.
+ dmenu grabs the keyboard before reading stdin if not reading from a tty. This
+ is faster, but will lock up X until stdin reaches end\-of\-file.
+ .TP
+-.B \-i
+-dmenu matches menu items case insensitively.
++.B \-s
++dmenu matches menu items case sensitively.
+ .TP
+ .BI \-l " lines"
+ dmenu lists items vertically, with the given number of lines.
+diff --git a/dmenu.c b/dmenu.c
+index 65f25ce..855df59 100644
+--- a/dmenu.c
++++ b/dmenu.c
+@@ -55,8 +55,9 @@ static Clr *scheme[SchemeLast];
+
+ #include "config.h"
+
+-static int (*fstrncmp)(const char *, const char *, size_t) = strncmp;
+-static char *(*fstrstr)(const char *, const char *) = strstr;
++static char * cistrstr(const char *s, const char *sub);
++static int (*fstrncmp)(const char *, const char *, size_t) = strncasecmp;
++static char *(*fstrstr)(const char *, const char *) = cistrstr;
+
+ static void
+ appenditem(struct item *item, struct item **list, struct item **last)
+@@ -709,9 +710,9 @@ main(int argc, char *argv[])
+ topbar = 0;
+ else if (!strcmp(argv[i], "-f")) /* grabs keyboard before reading stdin */
+ fast = 1;
+- else if (!strcmp(argv[i], "-i")) { /* case-insensitive item matching */
+- fstrncmp = strncasecmp;
+- fstrstr = cistrstr;
++ else if (!strcmp(argv[i], "-s")) { /* case-sensitive item matching */
++ fstrncmp = strncmp;
++ fstrstr = strstr;
+ } else if (i + 1 == argc)
+ usage();
+ /* these options take one argument */