aboutsummaryrefslogtreecommitdiff
path: root/files/.zsh/rc
diff options
context:
space:
mode:
authorAnton Bobov <anton@bobov.name>2023-08-23 18:02:35 +0500
committerAnton Bobov <anton@bobov.name>2023-08-23 18:02:35 +0500
commitc7e2a3813f1b61133a3e81ef493cc3f1dcc94cbf (patch)
tree9d8d1312b74291ed63270fb559ebb161f4ae54a8 /files/.zsh/rc
parent6b3ff438887001986097e97fce7ec938647a8c7a (diff)
Add nnn config
Diffstat (limited to 'files/.zsh/rc')
-rw-r--r--files/.zsh/rc/S50_nnn40
1 files changed, 40 insertions, 0 deletions
diff --git a/files/.zsh/rc/S50_nnn b/files/.zsh/rc/S50_nnn
new file mode 100644
index 0000000..e6e6dd9
--- /dev/null
+++ b/files/.zsh/rc/S50_nnn
@@ -0,0 +1,40 @@
+export NNN_PLUG='o:fzopen;z:autojump;p:preview-tui;T:-!&xdg-open "$PWD"'
+export NNN_ARCHIVE="\\.(7z|a|ace|alz|arc|arj|bz|bz2|cab|cpio|deb|gz|jar|lha|lz|lzh|lzma|lzo|rar|rpm|rz|t7z|tar|tbz|tbz2|tgz|tlz|txz|tZ|tzo|war|xpi|xz|Z|zip)$"
+export NNN_FCOLORS="03040601000205f7d204d9f7"
+export NNN_OPTS="aexR"
+if [ $(command -v trash) ] ; then
+ export NNN_TRASH=1
+fi
+
+n ()
+{
+ # Block nesting of nnn in subshells
+ [ "${NNNLVL:-0}" -eq 0 ] || {
+ echo "nnn is already running"
+ return
+ }
+
+ # The behaviour is set to cd on quit (nnn checks if NNN_TMPFILE is set)
+ # 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"
+ 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
+
+ # The command builtin allows one to alias nnn to n, if desired, without
+ # making an infinitely recursive alias
+ command nnn "$@"
+
+ [ ! -f "$NNN_TMPFILE" ] || {
+ . "$NNN_TMPFILE"
+ rm -f "$NNN_TMPFILE" > /dev/null
+ }
+}
+
+# vim: ft=zsh :