Files
nixos-config/modules/home/nushell.nix
2025-10-31 12:42:26 +09:00

42 lines
1.4 KiB
Nix

{ pkgs, ... }: {
imports = [ ./fish/env.nix ];
home.file.".config/nushell/nu".source = ../../shell/nu;
programs = {
nushell = {
enable = true;
shellAliases = { vi = "nvim"; };
# environmentVariables = let env = import ./fish/env.nix { inherit pkgs; };
# in env.home.sessionVariables;
extraConfig = ''
source ~/.config/nushell/nu/config.nu
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) |
append /usr/bin/env
)
'';
};
carapace.enable = true;
carapace.enableNushellIntegration = true;
};
}