feat(shell): improve shell completion

This commit is contained in:
2026-01-25 16:19:09 +01:00
parent 582460d8f4
commit 5d9efbb651
5 changed files with 24 additions and 2 deletions

View File

@@ -16,6 +16,11 @@ in {
lns = "ln -si";
};
};
autocompletion = mkOption {
type = types.bool;
default = config.home.shell.autocompletion;
example = true;
};
eatIntegration = mkEnableOption "Enable Emacs Eat integration";
bashrcExtra = mkOption {
type = types.lines;
@@ -33,6 +38,7 @@ in {
(strings.optionalString cfg.eatIntegration ''[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/bash"'')
cfg.bashrcExtra
];
enableCompletion = cfg.autocompletion;
shellAliases = cfg.aliases;
shellOptions = [
"histappend"

View File

@@ -88,6 +88,10 @@ in {
default = {};
example = {la = "ls -a";};
};
autocompletion = mkOption {
type = types.bool;
default = true;
};
};
config.home.shell = {
enableShellIntegration = cfg.bash.enable or cfg.zsh.enable or cfg.fish.enable;

View File

@@ -17,6 +17,11 @@ in {
lns = "ln -si";
};
};
autocompletion = mkOption {
type = types.bool;
default = config.home.shell.autocompletion;
example = true;
};
extraShellInit = mkOption {
type = types.lines;
default = "";
@@ -26,6 +31,7 @@ in {
config = lib.mkIf cfg.enable {
programs.fish = {
enable = true;
generateCompletions = cfg.autocompletion;
shellAbbrs = cfg.abbrs;
preferAbbrs = true;
shellInit = with lib;

View File

@@ -17,6 +17,11 @@ in {
lns = "ln -si";
};
};
autocompletion = mkOption {
type = types.bool;
default = config.home.shell.autocompletion;
example = true;
};
eatIntegration = mkEnableOption "Enable Emacs Eat integration";
zshrcExtra = lib.mkOption {
type = types.lines;
@@ -32,7 +37,7 @@ in {
enable = true;
strategy = ["match_prev_cmd" "completion"];
};
enableCompletion = true;
enableCompletion = cfg.autocompletion;
enableVteIntegration = true;
history = {
findNoDups = true;