# 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 PATH=$PATH:$HOME/.cargo/bin PATH=$PATH:$HOME/.config/guix/scripts DOCKER_HOME="$HOME/.docker" # vim mode >:) # no ryan i am not copying you set -o vi set show-mode-in-prompt on # Set shell prompt using starship if command -v "starship" > /dev/null; then eval "$(starship init zsh)" else export PS1="$$USER: " fi # aliases alias rf="rm -fr" # remove le french hon hon hon alias ls="ls --color=auto" alias ip="ip --color=auto" alias grep="grep --color=auto" alias diff="diff --color=auto" alias vim="nvim" alias ssh='TERM=xterm-256color ssh' # xterm-kitty bad # manpages export LESS_TERMCAP_md=$'\e[1;36m' export LESS_TERMCAP_me=$'\e[0m' export LESS_TERMCAP_se=$'\e[0m' export LESS_TERMCAP_so=$'\e[1;92m' export LESS_TERMCAP_ue=$'\e[0m' export LESS_TERMCAP_us=$'\e[1;35m' export GROFF_NO_SGR=1 # enable zsh auto suggestions autoload compinit && compinit source $GUIX_PROFILE/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh source $GUIX_PROFILE/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=#696e8a" ZSH_AUTOSUGGEST_STRATEGY=(completion history) # 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 # ranger .ranger() { ranger --choosedir=$HOME/.rangerdir < $TTY LASTDIR=$(cat $HOME/.rangerdir) cd "$LASTDIR" zle reset-prompt } zle -N ranger .ranger bindkey "^F" ranger # gpg export GPG_TTY=$(tty) # ricing pfetch