2019-11-21 20:44:25 +00:00
|
|
|
n ()
|
2017-04-19 12:52:30 +00:00
|
|
|
{
|
2019-11-17 09:03:30 +00:00
|
|
|
# Block nesting of nnn in subshells
|
2022-07-10 04:27:20 +00:00
|
|
|
if [[ "${NNNLVL:-0}" -ge 1 ]]; then
|
2019-11-17 09:03:30 +00:00
|
|
|
echo "nnn is already running"
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
2021-09-29 13:46:58 +00:00
|
|
|
# The behaviour is set to cd on quit (nnn checks if NNN_TMPFILE is set)
|
2022-04-06 15:28:12 +00:00
|
|
|
# If NNN_TMPFILE is set to a custom path, it must be exported for nnn to
|
|
|
|
# see. To cd on quit only on ^G, remove the "export" and make sure not to
|
|
|
|
# use a custom path, i.e. set NNN_TMPFILE *exactly* as follows:
|
|
|
|
# NNN_TMPFILE="${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.lastd"
|
2019-11-26 12:36:31 +00:00
|
|
|
export NNN_TMPFILE="${XDG_CONFIG_HOME:-$HOME/.config}/nnn/.lastd"
|
2019-11-21 20:44:25 +00:00
|
|
|
|
2019-11-20 20:53:02 +00:00
|
|
|
# Unmask ^Q (, ^V etc.) (if required, see `stty -a`) to Quit nnn
|
|
|
|
# stty start undef
|
|
|
|
# stty stop undef
|
|
|
|
# stty lwrap undef
|
2019-12-19 13:03:27 +00:00
|
|
|
# stty lnext undef
|
2019-11-20 20:53:02 +00:00
|
|
|
|
2022-07-17 00:25:59 +00:00
|
|
|
# The backslash allows one to alias n to nnn if desired without making an
|
|
|
|
# infinitely recursive alias
|
|
|
|
\nnn "$@"
|
2019-07-08 17:13:52 +00:00
|
|
|
|
2019-11-21 20:44:25 +00:00
|
|
|
if [ -f "$NNN_TMPFILE" ]; then
|
|
|
|
. "$NNN_TMPFILE"
|
|
|
|
rm -f "$NNN_TMPFILE" > /dev/null
|
2019-06-07 16:23:27 +00:00
|
|
|
fi
|
2017-04-19 12:52:30 +00:00
|
|
|
}
|