{ inputs, config, pkgs, ... }: { # But we all know I love zsh programs.zsh = { enable = true; autosuggestion.enable = true; enableCompletion = true; history.path = "${config.xdg.dataHome}/zsh/history"; dotDir = ".config/zsh"; shellAliases = { note = "nvim ~/Documents/wiki/notes.md"; wiki = "nvim ~/Documents/wiki/index.md"; lg = "lazygit"; }; envExtra = '' # NNN settings export NNN_FIFO="/tmp/nnn.fifo" export NNN_SSHFS="sshfs -o follow_symlinks" export NNN_TERMINAL="alacritty --class preview,preview" # Catppuccin colors nnn BLK="03" CHR="03" DIR="04" EXE="02" REG="07" HARDLINK="05" SYMLINK="05" MISSING="08" ORPHAN="01" FIFO="06" SOCK="03" UNKNOWN="01" export NNN_COLORS="#04020301;4231" export NNN_FCOLORS="$BLK$CHR$DIR$EXE$REG$HARDLINK$SYMLINK$MISSING$ORPHAN$FIFO$SOCK$UNKNOWN" ''; initExtra = '' # VI Mode escape timeout fix export KEYTIMEOUT=1 # Substring search settings export HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_FOUND="bg=blue,fg=black,bold" export HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND='bg=red,fg=black,bold' bindkey -M vicmd 'k' history-substring-search-up bindkey -M vicmd 'j' history-substring-search-down ''; initExtraFirst = '' nitch ''; zplug = { enable = true; plugins = [ { name = "zap-zsh/supercharge"; } { name = "zap-zsh/completions"; } { name = "zap-zsh/vim"; } { name = "chivalryq/git-alias"; } { name = "zdharma-continuum/fast-syntax-highlighting"; } { name = "MichaelAquilina/zsh-you-should-use"; } { name = "zsh-users/zsh-history-substring-search"; } ]; }; }; # Eza settings programs.eza = { enable = true; enableZshIntegration = true; git = true; icons = true; }; # Zoxide settings programs.zoxide = { enable = true; enableZshIntegration = true; }; # Starhip settings programs.starship = let flavour = "frappe"; in { enable = true; enableZshIntegration = true; settings = { palette = "catppuccin_${flavour}"; add_newline = false; } // builtins.fromTOML (builtins.readFile (pkgs.fetchFromGitHub { owner = "starship"; repo = "starship"; rev = "698572aa575508a4bdd0d3092c97f5a056dc50eb"; hash = "sha256-jrtlK4vN8u2UhKeo5+9IyCVYJxkySh+JKhSCUsnQWAg="; } + /docs/public/presets/toml/pure-preset.toml)) // builtins.fromTOML (builtins.readFile (pkgs.fetchFromGitHub { owner = "catppuccin"; repo = "starship"; rev = "5629d2356f62a9f2f8efad3ff37476c19969bd4f"; hash = "sha256-nsRuxQFKbQkyEI4TXgvAjcroVdG+heKX5Pauq/4Ota0="; } + /palettes/${flavour}.toml)); }; # Fzf settings programs.fzf = { enable = true; enableZshIntegration = true; }; # Enable direnv programs.direnv = { enable = true; enableZshIntegration = true; nix-direnv.enable = true; }; }