nnn

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 87380732dc37a26d8358e025a571eaea3d859d32
parent 1d5efa70748cee2a6a28181f07500c8d9800a292
Author: Arun Prakash Jana <engineerarun@gmail.com>
Date:   Thu,  5 Aug 2021 22:15:02 +0530

make option O_MATCHFLTR to disable filters without match

Diffstat:
MMakefile | 5+++++
Mmisc/haiku/Makefile | 7++++++-
Msrc/nnn.c | 7++++++-
3 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/Makefile b/Makefile @@ -26,6 +26,7 @@ O_BENCH := 0 # benchmark mode (stops at first user input) O_NOSSN := 0 # disable session support O_NOUG := 0 # disable user, group name in status bar O_NOX11 := 0 # disable X11 integration +O_MATCHFLTR := 0 # allow filters without matches # User patches O_GITSTATUS := 0 # add git status to detail view @@ -115,6 +116,10 @@ ifeq ($(strip $(O_NOX11)),1) CPPFLAGS += -DNOX11 endif +ifeq ($(strip $(O_MATCHFLTR)),1) + CPPFLAGS += -DMATCHFLTR +endif + ifeq ($(shell $(PKG_CONFIG) ncursesw && echo 1),1) CFLAGS_CURSES ?= $(shell $(PKG_CONFIG) --cflags ncursesw) LDLIBS_CURSES ?= $(shell $(PKG_CONFIG) --libs ncursesw) diff --git a/misc/haiku/Makefile b/misc/haiku/Makefile @@ -21,9 +21,10 @@ O_ICONS := 0 # support icons-in-terminal O_NERD := 0 # support icons-nerdfont O_QSORT := 0 # use Alexey Tourbin's QSORT implementation O_BENCH := 0 # benchmark mode (stops at first user input) -O_NOSSN := 0 # enable session support +O_NOSSN := 0 # disable session support O_NOUG := 0 # disable user, group name in status bar O_NOX11 := 0 # disable X11 integration +O_MATCHFLTR := 0 # allow filters without matches # User patches O_GITSTATUS := 0 # add git status to detail view @@ -118,6 +119,10 @@ ifeq ($(strip $(O_NOX11)),1) CPPFLAGS += -DNOX11 endif +ifeq ($(strip $(O_MATCHFLTR)),1) + CPPFLAGS += -DMATCHFLTR +endif + ifeq ($(shell $(PKG_CONFIG) ncursesw && echo 1),1) CFLAGS_CURSES ?= $(shell $(PKG_CONFIG) --cflags ncursesw) LDLIBS_CURSES ?= $(shell $(PKG_CONFIG) --libs ncursesw) diff --git a/src/nnn.c b/src/nnn.c @@ -3367,9 +3367,14 @@ static int filterentries(char *path, char *lastname) * - new matches can only be a subset of current matches. */ /* ndents = total; */ - +#ifdef MATCHFLTR + r = matches(pln); + if (r <= 0) { + !r ? unget_wch(KEY_BACKSPACE) : showfilter(ln); +#else if (matches(pln) == -1) { showfilter(ln); +#endif continue; }