nixos-config/home/zsh.nix

68 lines
1.5 KiB
Nix

{ pkgs, lib, inputs, config, ... }: {
programs = {
zsh = {
enable = true;
history.extended = true;
prezto = {
enable = true;
editor = {
keymap = "vi";
dotExpansion = true;
};
prompt = {
theme = "paradox";
pwdLength = "long";
showReturnVal = true;
};
terminal.autoTitle = true;
pmodules = [
"environment"
"terminal"
"editor"
"history"
"history-substring-search"
# "directory"
"spectrum"
# "utility"
# "completion"
"git"
"autosuggestions"
"syntax-highlighting"
"prompt"
];
};
initExtra = ''
# Autocomplete ../
zstyle ':completion:*' special-dirs true
export PATH="$HOME/.config/emacs/bin:$PATH"
unalias "gs"
'';
shellAliases = {
l = "exa -l";
c = "z";
tree = "exa --tree --icons";
s = "nix-shell --run zsh";
sp = "nix-shell --run zsh -p";
spu = "nix-shell -I nixpkgs=channel:nixos-unstable --run zsh -p";
nd = "nix develop --command zsh";
em = "emacsclient -c";
emnw = "emacsclient -nw";
gst = "git status -sb";
gcm = "git commit -m";
gps = "git push";
gpl = "git pull";
"git clone git clone" = "git clone";
};
};
zoxide = {
enable = true;
enableZshIntegration = true;
};
};
}