aboutsummaryrefslogtreecommitdiffstats
path: root/misc/quitcd/quitcd.bash_zsh
diff options
context:
space:
mode:
authorGravatar Arun Prakash Jana <engineerarun@gmail.com>2020-02-29 18:36:47 +0530
committerGravatar Arun Prakash Jana <engineerarun@gmail.com>2020-02-29 18:36:47 +0530
commit77e31834673cc4ff3f10912d5829834ed7bad350 (patch)
tree10129b1e54ee3256b268cf45e8873c7046b17cc8 /misc/quitcd/quitcd.bash_zsh
parenta5a3a84bd1a5771d21cc45b41043d21e8393aa78 (diff)
downloadnnn-77e31834673cc4ff3f10912d5829834ed7bad350.tar.gz
Merge quitcd scripts for bash and zsh
Diffstat (limited to 'misc/quitcd/quitcd.bash_zsh')
-rw-r--r--misc/quitcd/quitcd.bash_zsh27
1 files changed, 27 insertions, 0 deletions
diff --git a/misc/quitcd/quitcd.bash_zsh b/misc/quitcd/quitcd.bash_zsh
new file mode 100644
index 0000000..edeb2db
--- /dev/null
+++ b/misc/quitcd/quitcd.bash_zsh
@@ -0,0 +1,27 @@
+n ()
+{
+ # Block nesting of nnn in subshells
+ if [ -n $NNNLVL ] && [ "${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, remove the "export" as in:
+ # NNN_TMPFILE="${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.lastd"
+ # NOTE: NNN_TMPFILE is fixed, should not be modified
+ export NNN_TMPFILE="${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.lastd"
+
+ # Unmask ^Q (, ^V etc.) (if required, see `stty -a`) to Quit nnn
+ # stty start undef
+ # stty stop undef
+ # stty lwrap undef
+ # stty lnext undef
+
+ nnn "$@"
+
+ if [ -f "$NNN_TMPFILE" ]; then
+ . "$NNN_TMPFILE"
+ rm -f "$NNN_TMPFILE" > /dev/null
+ fi
+}