More nnn config (cd on quit and FIFO)
This commit is contained in:
@ -19,7 +19,44 @@ in {
|
||||
enable = true;
|
||||
|
||||
# TODO:
|
||||
# functions = {};
|
||||
functions = {
|
||||
nnncd = {
|
||||
wraps = "nnn";
|
||||
description = "support nnn quit and change directory";
|
||||
body = ''
|
||||
# Block nesting of nnn in subshells
|
||||
if test -n "$NNNLVL" -a "$NNNLVL" -ge 1
|
||||
echo "nnn is already running"
|
||||
return
|
||||
end
|
||||
|
||||
# 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 "-x" from both lines below,
|
||||
# without changing the paths.
|
||||
if test -n "$XDG_CONFIG_HOME"
|
||||
set -x NNN_TMPFILE "$XDG_CONFIG_HOME/nnn/.lastd"
|
||||
else
|
||||
set -x NNN_TMPFILE "$HOME/.config/nnn/.lastd"
|
||||
end
|
||||
|
||||
# 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 function allows one to alias this function to `nnn` without
|
||||
# making an infinitely recursive alias
|
||||
command nnn $argv
|
||||
|
||||
if test -e $NNN_TMPFILE
|
||||
source $NNN_TMPFILE
|
||||
rm $NNN_TMPFILE
|
||||
end
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
# TODO:
|
||||
# plugins = [];
|
||||
@ -53,6 +90,7 @@ in {
|
||||
blk = batify "lsblk -o NAME,LABEL,UUID,FSTYPE,SIZE,FSUSE%,MOUNTPOINT,MODEL";
|
||||
grep = "grep --color=auto -E"; # grep with extended regex
|
||||
watch = "watch -d -c -n 0.5";
|
||||
n = "nnncd -a -P p"; # Doesn't work with abbrify because I have nnn.override?
|
||||
|
||||
# systemd
|
||||
failed = "systemctl --failed";
|
||||
@ -95,7 +133,7 @@ in {
|
||||
})
|
||||
(abbrify pkgs.gping {ping = "gping";})
|
||||
(abbrify pkgs.lazygit {lg = "lazygit";})
|
||||
(abbrify pkgs.navi {n = "navi";})
|
||||
# (abbrify pkgs.navi {n = "navi";})
|
||||
(abbrify pkgs.notmuch {
|
||||
mailrefresh = "notmuch new";
|
||||
mailsearch = "notmuch search";
|
||||
|
Reference in New Issue
Block a user