commit f4acfc7a4e065bab2f4e01f1c641d0b398deb8d7
parent 7d0be597ad2791ef223cca732b9e4223879e3dbb
Author: Arun Prakash Jana <engineerarun@gmail.com>
Date: Sun, 17 Nov 2019 14:33:30 +0530
Block nesting of nnn instances
Diffstat:
4 files changed, 19 insertions(+), 1 deletion(-)
diff --git a/misc/quitcd/quitcd.bash b/misc/quitcd/quitcd.bash
@@ -1,5 +1,11 @@
n()
{
+ # Block nesting of nnn in subshells
+ if [ $(expr $NNNLVL + 0) -ge 1 ]; then
+ echo "nnn is already running"
+ return
+ fi
+
# The default behaviour is to cd on quit (nnn checks if NNN_TMPFILE is set)
# To cd on quit only on ^G, export NNN_TMPFILE after the call to nnn
export NNN_TMPFILE=${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.lastd
diff --git a/misc/quitcd/quitcd.csh b/misc/quitcd/quitcd.csh
@@ -4,4 +4,4 @@
# To cd on quit only on ^G, export NNN_TMPFILE after the call to nnn
set NNN_TMPFILE=~/.config/nnn/.lastd
-alias n 'nnn; source "$NNN_TMPFILE"; rm "$NNN_TMPFILE"'
+alias n 'nnn; source "$NNN_TMPFILE"; rm -f "$NNN_TMPFILE"'
diff --git a/misc/quitcd/quitcd.fish b/misc/quitcd/quitcd.fish
@@ -3,6 +3,12 @@
# or, add the lines to the 'config.fish' file.
function n --description 'support nnn quit and change directory'
+ # Block nesting of nnn in subshells
+ if [ (expr $NNNLVL + 0) -ge 1 ]
+ echo "nnn is already running"
+ return
+ end
+
# The default behaviour is to cd on quit (nnn checks if NNN_TMPFILE is set)
# To cd on quit only on ^G, export NNN_TMPFILE after the call to nnn
if test -n "$XDG_CONFIG_HOME"
diff --git a/misc/quitcd/quitcd.zsh b/misc/quitcd/quitcd.zsh
@@ -1,5 +1,11 @@
n()
{
+ # Block nesting of nnn in subshells
+ if [ $(expr $NNNLVL + 0) -ge 1 ]; then
+ echo "nnn is already running"
+ return
+ fi
+
# The default behaviour is to cd on quit (nnn checks if NNN_TMPFILE is set)
# To cd on quit only on ^G, export NNN_TMPFILE after the call to nnn
export NNN_TMPFILE=${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.lastd