Use : for filter case

This commit is contained in:
Arun Prakash Jana 2020-01-11 21:46:37 +05:30
parent 274c612076
commit 99d15815f0
No known key found for this signature in database
GPG key ID: A75979F35C080412
4 changed files with 6 additions and 4 deletions

2
nnn.1
View file

@ -146,7 +146,7 @@ To modify match criteria at runtime:
.br
- regex to string: press '/' at empty filter prompt
.br
- toggle case sensitivity: press '|' at empty filter prompt
- toggle case sensitivity: press ':' at empty filter prompt
.Pp
Common regex use cases:
.Pp

View file

@ -13,6 +13,7 @@
# # export NNN_OPENER=nuke
# 2. Run nnn with the program option to indicate a CLI opener
# nnn -c
# # The -c program option overrides config `NNN_USE_EDITOR`
# 3. nuke can use nnn plugins (e.g. mocplay is used for audio), $PATH is updated.
#
# Details:

View file

@ -79,7 +79,7 @@ static void disabledbg(void)
#define STRINGIFY(x) #x
#define TOSTRING(x) STRINGIFY(x)
#define DPRINTF_D(x) xprintf(DEBUG_FD, "ln " TOSTRING(__LINE__) ": " #x "=%d\n", x, __LINE__)
#define DPRINTF_D(x) xprintf(DEBUG_FD, "ln " TOSTRING(__LINE__) ": " #x "=%d\n", x)
#define DPRINTF_U(x) xprintf(DEBUG_FD, "ln " TOSTRING(__LINE__) ": " #x "=%u\n", x)
#define DPRINTF_S(x) xprintf(DEBUG_FD, "ln " TOSTRING(__LINE__) ": " #x "=%s\n", x)
#define DPRINTF_P(x) xprintf(DEBUG_FD, "ln " TOSTRING(__LINE__) ": " #x "=%p\n", x)

View file

@ -129,6 +129,7 @@
#define READLINE_MAX 128
#define FILTER '/'
#define RFILTER '\\'
#define CASE ':'
#define MSGWAIT '$'
#define REGEX_MAX 48
#define BM_MAX 10
@ -2011,7 +2012,7 @@ static void showfilterinfo(void)
{
char info[REGEX_MAX];
snprintf(info, REGEX_MAX - 1, " %s [/\\], %s [|]",
snprintf(info, REGEX_MAX - 1, " %s [/\\], %s [:]",
(cfg.regex ? "regex" : "str"),
((fnstrstr == &strcasestr) ? "ic" : "noic"));
printinfoln(info);
@ -2167,7 +2168,7 @@ static int filterentries(char *path, char *lastname)
}
/* Toggle case-sensitivity */
if (*ch == '|') {
if (*ch == CASE) {
fnstrstr = (fnstrstr == &strcasestr) ? &strstr : &strcasestr;
regflags ^= REG_ICASE;
showfilter(ln);