configuration.nix/modules/home/programs/nushell/default.nix

60 lines
1.7 KiB
Nix
Raw Normal View History

2024-01-29 08:48:15 +01:00
{
programs = {
nushell = {
enable = true;
extraConfig = ''
let carapace_completer = {|spans|
carapace $spans.0 nushell $spans | from json
}
$env.config = {
show_banner: false,
completions: {
case_sensitive: false # case-sensitive completions
quick: true # set to false to prevent auto-selecting completions
partial: true # set to false to prevent partial filling of the prompt
algorithm: "fuzzy" # prefix or fuzzy
external: {
# set to false to prevent nushell looking into $env.PATH to find more suggestions
enable: true
# set to lower can improve completion performance at the cost of omitting some options
max_results: 100
completer: $carapace_completer # check 'carapace_completer'
}
}
}
$env.PATH = ($env.PATH |
split row (char esep) |
prepend /home/myuser/.apps |
append /usr/bin/env
)
'';
2024-01-29 09:48:20 +01:00
sessionVariables = {
PASSWORD_STORE_DIR = "$HOME/.password-store";
};
2024-01-29 09:06:29 +01:00
shellAliases = {
gcal = ''
bash -c "cal $(date +%Y)"
'';
ssh = "TERM=xterm-256color ssh";
dev = "nix develop --command $env.SHELL";
torrent = "transmission-remote";
vi = "nvim";
};
2024-01-29 08:48:15 +01:00
};
carapace = {
enable = true;
enableNushellIntegration = true;
};
starship = {
enable = true;
settings = {
add_newline = true;
character = {
success_symbol = "[](bold green)";
error_symbol = "[](bold red)";
};
};
};
};
}