mirror of
https://github.com/nix-community/home-manager.git
synced 2025-11-08 11:36:05 +01:00
80 lines
2.2 KiB
Nix
80 lines
2.2 KiB
Nix
{ config, lib, ... }:
|
|
let
|
|
inherit (lib) mkOption types;
|
|
|
|
cfg = config.programs.zsh;
|
|
in
|
|
{
|
|
imports = [
|
|
(lib.mkRenamedOptionModule
|
|
[ "programs" "zsh" "enableAutosuggestions" ]
|
|
[ "programs" "zsh" "autosuggestion" "enable" ]
|
|
)
|
|
(lib.mkRenamedOptionModule
|
|
[ "programs" "zsh" "enableSyntaxHighlighting" ]
|
|
[ "programs" "zsh" "syntaxHighlighting" "enable" ]
|
|
)
|
|
];
|
|
|
|
options = {
|
|
programs.zsh = {
|
|
initExtraBeforeCompInit = mkOption {
|
|
default = "";
|
|
type = types.lines;
|
|
apply =
|
|
x:
|
|
lib.warnIfNot (x == "") ''
|
|
`programs.zsh.initExtraBeforeCompInit` is deprecated, use `programs.zsh.initContent` with `lib.mkOrder 550` instead.
|
|
|
|
Example: programs.zsh.initContent = lib.mkOrder 550 "your content here";
|
|
'' x;
|
|
visible = false;
|
|
description = ''
|
|
Extra commands that should be added to {file}`.zshrc` before compinit.
|
|
'';
|
|
};
|
|
|
|
initExtra = mkOption {
|
|
default = "";
|
|
type = types.lines;
|
|
visible = false;
|
|
apply =
|
|
x:
|
|
lib.warnIfNot (x == "") ''
|
|
`programs.zsh.initExtra` is deprecated, use `programs.zsh.initContent` instead.
|
|
|
|
Example: programs.zsh.initContent = "your content here";
|
|
'' x;
|
|
description = ''
|
|
Extra commands that should be added to {file}`.zshrc`.
|
|
'';
|
|
};
|
|
|
|
initExtraFirst = mkOption {
|
|
default = "";
|
|
type = types.lines;
|
|
visible = false;
|
|
apply =
|
|
x:
|
|
lib.warnIfNot (x == "") ''
|
|
`programs.zsh.initExtraFirst` is deprecated, use `programs.zsh.initContent` with `lib.mkBefore` instead.
|
|
|
|
Example: programs.zsh.initContent = lib.mkBefore "your content here";
|
|
'' x;
|
|
description = ''
|
|
Commands that should be added to top of {file}`.zshrc`.
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
|
|
config = {
|
|
programs.zsh.initContent = lib.mkMerge [
|
|
(lib.mkIf (cfg.initExtraFirst != "") (lib.mkBefore cfg.initExtraFirst))
|
|
|
|
(lib.mkIf (cfg.initExtraBeforeCompInit != "") (lib.mkOrder 550 cfg.initExtraBeforeCompInit))
|
|
|
|
(lib.mkIf (cfg.initExtra != "") cfg.initExtra)
|
|
];
|
|
};
|
|
}
|