|
|
@ -1,8 +1,57 @@ |
|
|
|
{pkgs, settings, ...}: |
|
|
|
|
|
|
|
{ |
|
|
|
home.file = { |
|
|
|
".config/zsh/plugins/zsh-autosuggestions".source = "${pkgs.zsh-autosuggestions}/share/zsh-autosuggestions"; |
|
|
|
".config/zsh/plugins/fast-syntax-highlighting".source = "${pkgs.zsh-fast-syntax-highlighting}/share/zsh/site-functions"; |
|
|
|
".config/zsh/plugins/nix-zsh-completions".source = "${pkgs.nix-zsh-completions}/share/zsh/plugins/nix"; |
|
|
|
".config/zsh/plugins/pure".source = "${pkgs.pure-prompt}/share/zsh/site-functions"; |
|
|
|
".config/zsh/functions".source = ../../dotfiles/.config/zsh/functions; |
|
|
|
".config/zsh/keybinds.zsh".source = ../../dotfiles/.config/zsh/keybinds.zsh; |
|
|
|
}; |
|
|
|
|
|
|
|
programs.zsh = { |
|
|
|
enable = true; |
|
|
|
dotDir = ".config/zsh"; |
|
|
|
envExtra = '' |
|
|
|
export EDITOR="vim" |
|
|
|
export TERMINAL="konsole" |
|
|
|
export TERM="konsole" |
|
|
|
export BROWSER="firefox" |
|
|
|
export VIDEO="mpv" |
|
|
|
export OPENER="xdg-open" |
|
|
|
''; |
|
|
|
initExtra = '' |
|
|
|
# Set emacs key binding. |
|
|
|
bindkey -e |
|
|
|
|
|
|
|
# Import functions. |
|
|
|
source "$ZDOTDIR/functions" |
|
|
|
|
|
|
|
# Set custom key bindings. |
|
|
|
zsh_add_config keybinds.zsh |
|
|
|
|
|
|
|
# Configure pure-prompt. |
|
|
|
export PURE_PROMPT_SYMBOL="$" |
|
|
|
if [ "$USER" = "root" ]; then |
|
|
|
export PURE_PROMPT_SYMBOL="#" |
|
|
|
fi |
|
|
|
export PROMPT_PURE_SSH_CONNECTION=YES |
|
|
|
zsh_fpath_plugin sindresorhus/pure |
|
|
|
autoload -U promptinit; promptinit |
|
|
|
zstyle :prompt:pure:user color cyan |
|
|
|
zstyle :prompt:pure:host color white |
|
|
|
zstyle ':prompt:pure:prompt:*' color white |
|
|
|
prompt pure |
|
|
|
|
|
|
|
# Add extra plugins. |
|
|
|
zsh_add_plugin zdharma-continuum/fast-syntax-highlighting |
|
|
|
|
|
|
|
ZSH_AUTOSUGGEST_STRATEGY=(history completion) |
|
|
|
zsh_add_plugin zsh-users/zsh-autosuggestions |
|
|
|
|
|
|
|
# Show off the system. |
|
|
|
${pkgs.fastfetch}/bin/fastfetch |
|
|
|
''; |
|
|
|
}; |
|
|
|
} |