aboutsummaryrefslogtreecommitdiff
path: root/modules/zsh.nix
blob: 9dab7d82d28bed770d2f376111479f24584d45a3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{ config, lib, pkgs, ... }:

let
  cfg = config.zsh;
in {
  options.zsh.enable = lib.mkEnableOption "Enable zsh and configure";

  config = lib.mkIf cfg.enable {
    programs.zsh = {
    enable = true;
    autosuggestion.enable = true;
    historySubstringSearch.enable = true;
    plugins = [
        {
          name = "pure";
          src = "${pkgs.pure-prompt}/share/zsh/site-functions";
        }
        {
          name = "zsh-completions";
          src = "${pkgs.zsh-completions}/share/zsh/site-functions";
        }
        {
          name = "fast-syntax-highlighting";
          src = "${pkgs.zsh-fast-syntax-highlighting}/share/zsh/site-functions";
        }
      ];
    };
  };
}