56 lines
1.1 KiB
Nix
56 lines
1.1 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
with lib; let
|
|
cfg = config.shell.fish;
|
|
in {
|
|
options = {
|
|
shell.fish.enable =
|
|
mkEnableOption "enable fish";
|
|
};
|
|
config = mkIf cfg.enable {
|
|
programs = {
|
|
# atuin = {
|
|
# enable = true;
|
|
# flags = [
|
|
# "--disable-up-arrow"
|
|
# ];
|
|
# };
|
|
# };
|
|
eza.enable = true;
|
|
zoxide.enable = true;
|
|
keychain = {
|
|
enable = true;
|
|
keys = ["id_ed25519"];
|
|
extraFlags = [
|
|
"--quiet"
|
|
"--noask"
|
|
];
|
|
};
|
|
fish = {
|
|
enable = true;
|
|
shellAliases = {
|
|
# cd = "z";
|
|
cat = "bat";
|
|
la = "ls -a";
|
|
l = "ls -la";
|
|
};
|
|
interactiveShellInit = ''
|
|
set fish_greeting
|
|
set fish_cursor_default block blink
|
|
set fish_cursor_insert line blink
|
|
set fish_cursor_replace_one underscore blink
|
|
set fish_cursor_visual block
|
|
|
|
function fish_user_key_bindings
|
|
fish_default_key_bindings -M insert
|
|
fish_vi_key_bindings --no-erase insert
|
|
end
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
}
|