From b492dfd7ca7875ae39a3eb6b72e47f9b4be88996 Mon Sep 17 00:00:00 2001 From: KlzXS Date: Sun, 3 Oct 2021 11:42:02 +0200 Subject: [PATCH] Added recursive capabilities to .nmv --- plugins/.nmv | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/plugins/.nmv b/plugins/.nmv index 224cdd82..37b77995 100755 --- a/plugins/.nmv +++ b/plugins/.nmv @@ -20,6 +20,7 @@ EDITOR="${EDITOR:-vi}" TMPDIR="${TMPDIR:-/tmp}" INCLUDE_HIDDEN="${INCLUDE_HIDDEN:-0}" VERBOSE="${VERBOSE:-0}" +RECURSIVE="${RECURSIVE:-0}" selection=${NNN_SEL:-${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.selection} exit_status=0 @@ -38,11 +39,19 @@ fi if [ "$resp" = "s" ]; then arr=$(tr '\0' '\n' < "$selection") else - if [ "$INCLUDE_HIDDEN" -eq 0 ]; then - arr=$(find . ! -name . -prune ! -name ".*" -print | sort) - else - arr=$(find . ! -name . -prune -print | sort) + findcmd="find . ! -name ." + + if [ "$RECURSIVE" -eq 0 ]; then + findcmd="$findcmd -prune" fi + + if [ "$INCLUDE_HIDDEN" -eq 0 ]; then + findcmd="$findcmd ! -name \".*\"" + fi + + findcmd="$findcmd -print" + + arr=$(eval "$findcmd" | sort) fi lines=$(printf "%s\n" "$arr" | wc -l)