53 lines
1.5 KiB
Nix
53 lines
1.5 KiB
Nix
{config, ...}: {
|
||
programs.zsh = {
|
||
enable = true;
|
||
dotDir = ".config/zsh";
|
||
enableCompletion = true;
|
||
autosuggestion.enable = true;
|
||
syntaxHighlighting.enable = true;
|
||
|
||
shellAliases = {
|
||
nixconfig = "cd /home/cnst/.nix-config/";
|
||
ll = "ls -l";
|
||
nixupdate = "sudo nixos-rebuild switch -v --show-trace --flake .#cnix";
|
||
flakeupdate = "nix flake update";
|
||
};
|
||
history = {
|
||
size = 1000;
|
||
path = "${config.xdg.dataHome}/zsh/history";
|
||
};
|
||
oh-my-zsh = {
|
||
enable = true;
|
||
plugins = [
|
||
"git"
|
||
"thefuck"
|
||
];
|
||
theme = "robbyrussell";
|
||
};
|
||
initExtra = ''
|
||
ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}(%{$fg[red]%}"
|
||
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} "
|
||
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}%1{✗%}"
|
||
ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})"
|
||
|
||
ZSH_THEME_RUBY_PROMPT_PREFIX="%{$fg_bold[red]%}‹"
|
||
ZSH_THEME_RUBY_PROMPT_SUFFIX="›%{$reset_color%}"
|
||
|
||
PROMPT='%{$fg_bold[green]%}%c%{$reset_color%} $(git_prompt_info)$(virtualenv_prompt_info)
|
||
➜ '
|
||
|
||
RPROMPT='$(ruby_prompt_info)'
|
||
|
||
VIRTUAL_ENV_DISABLE_PROMPT=0
|
||
ZSH_THEME_VIRTUAL_ENV_PROMPT_PREFIX=" %{$fg[green]%}🐍 "
|
||
ZSH_THEME_VIRTUAL_ENV_PROMPT_SUFFIX="%{$reset_color%}"
|
||
ZSH_THEME_VIRTUALENV_PREFIX=$ZSH_THEME_VIRTUAL_ENV_PROMPT_PREFIX
|
||
ZSH_THEME_VIRTUALENV_SUFFIX=$ZSH_THEME_VIRTUAL_ENV_PROMPT_SUFFIX
|
||
|
||
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=241'
|
||
eval $(thefuck --alias)
|
||
eval $(thefuck --alias FUCK)
|
||
'';
|
||
};
|
||
}
|