nixfiles/home/programs/fish/default.nix

53 lines
955 B
Nix

{pkgs, ...}: {
programs.fish = {
enable = true;
interactiveShellInit = ''
set fish_greeting
trap __trap_exit_tmux EXIT
'';
shellAliases = {v = "nvim";};
functions = {
__trap_exit_tmux = {
body = ''
test (tmux list-windows | wc -l) = 1 || exit
test (tmux list-panes | wc -l) = 1 || exit
tmux switch-client -t main
'';
};
};
plugins = with pkgs.fishPlugins; [
{
name = "z";
inherit (z) src;
}
{
name = "hydro";
inherit (hydro) src;
}
{
name = "sponge";
inherit (sponge) src;
}
{
name = "grc";
inherit (grc) src;
}
{
name = "done";
inherit (done) src;
}
{
name = "fzf-fish";
inherit (fzf-fish) src;
}
{
name = "forgit";
inherit (forgit) src;
}
];
};
}