2023-09-05 03:21:01 +00:00
# Zsh shell initalization file
# Export 'SHELL' to child processes
export SHELL
if [ [ $- != *i* ] ]
then
# We are being invoked from a non-interactive shell. If this
# is an SSH session (as in "ssh host command"), source
# /etc/profile so we get PATH and other essential variables.
[ [ -n " $SSH_CLIENT " ] ] && source /etc/profile
# Don't do anything else.
return
fi
2023-09-29 14:36:21 +00:00
PATH = $PATH :$HOME /.cargo/bin
2023-09-05 03:21:01 +00:00
# vim mode >:)
# no ryan i am not copying you
set -o vi
set show-mode-in-prompt on
# Set shell prompt using starship
eval " $( starship init zsh) "
# Set guix reconfigure aliases
alias reconfigure-system= " sudo -E guix system -L $HOME /.config/guix/modules reconfigure $HOME /.config/guix/ $( hostname) .scm "
alias reconfigure-user= " guix home -L $HOME /.config/guix/modules reconfigure $HOME /.config/guix/home-config/home-configuration.scm && home-manager switch "
# Set other usefull aliases
alias neo = "pfetch"
alias rf = "rm -fr" # remove le french hon hon hon
alias config = " /usr/bin/git --git-dir= $HOME /.cfg/ --work-tree= $HOME "
alias ls = "ls --color=auto"
alias su = "doas -s"
# Have manpages use colors
man( ) {
env \
LESS_TERMCAP_md = $'\e[1;36m' \
LESS_TERMCAP_me = $'\e[0m' \
LESS_TERMCAP_se = $'\e[0m' \
LESS_TERMCAP_so = $'\e[1;92m' \
LESS_TERMCAP_ue = $'\e[0m' \
LESS_TERMCAP_us = $'\e[1;35m' \
man " $@ "
}
# Enable zsh auto suggestions
autoload compinit && compinit
2023-10-01 15:55:23 +00:00
source $GUIX_PROFILE /share/zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
2023-09-05 03:21:01 +00:00
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE = "fg=#696e8a"
ZSH_AUTOSUGGEST_STRATEGY = ( completion history )
# Enable zsh keybinds for home, end, and other movement keybinds
bindkey "\e[1;5D" backward-word
bindkey "\e[1;5C" forward-word
bindkey "\e[3;5~" kill-word
bindkey "\C-_" backward-kill-word
bindkey "\e[3~" delete-char
bindkey "\e[H" beginning-of-line
bindkey "\e[F" end-of-line
bindkey "\e\d" undo
# GPG SETUP FOR SSH
export GPG_TTY = $( tty)
# ricing
pfetch