{ config, lib, pkgs, ... }: let palette-hex = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.palette; palette-shex = pkgs.lib.nix-rice.palette.toRGBShortHex pkgs.rice.palette; in { programs.zsh = { enable = true; autosuggestion.enable = true; enableCompletion = true; syntaxHighlighting.enable = true; enableVteIntegration = true; autocd = true; defaultKeymap = "viins"; initExtra = builtins.readFile ../dots/zsh; plugins = [ { name = "powerlevel10k"; src = pkgs.zsh-powerlevel10k; file = "share/zsh-powerlevel10k/powerlevel10k.zsh-theme"; } { name = "zsh-vi-mode"; src = pkgs.zsh-vi-mode; file = "share/zsh-vi-mode/zsh-vi-mode.zsh"; } { name = "zsh-autopair"; src = pkgs.zsh-autopair; file = "share/zsh-autopair/zsh-autopair.zsh"; } { name = "zsh-completions"; src = pkgs.zsh-completions; file = "share/zsh-completions/zsh-completions.zsh"; } { name = "zsh-command-time"; src = pkgs.zsh-command-time; file = "share/zsh-completions/zsh-command-time.zsh"; } { name = "zsh-autocomplete"; src = pkgs.zsh-autocomplete; file = "share/zsh-autocomplete/zsh-autocomplete.zsh"; } { name = "zsh-fast-syntax-highlighting"; src = pkgs.zsh-fast-syntax-highlighting; file = "share/zsh-fast-syntax-highlighting/zsh-fast-syntax-highlighting.zsh"; } { name = "zsh-nix-shell"; src = pkgs.zsh-nix-shell; file = "share/zsh-nix-shell/zsh-nix-shell.zsh"; } { name = "any-nix-shell"; src = pkgs.any-nix-shell; file = "share/any-nix-shell/any-nix-shell.zsh"; } { name = "nix-zsh-completions"; src = pkgs.nix-zsh-completions; file = "share/nix-zsh-completions/nix-zsh-completions.zsh"; } ]; }; }