.dotfiles/shell/zshrc

62 lines
1.6 KiB
Bash

# Load zsh-snap (znap) plugin manager
zstyle ':znap:*' repos-dir ~/.znap
source ~/.znap/znap/znap.zsh
# Helper Functions
# Returns whether the given command is executable or aliased.
_has() {
return $( whence $1 >/dev/null )
}
# Plugins
znap source ohmyzsh/ohmyzsh lib/{git,theme-and-appearance}
znap source ohmyzsh/ohmyzsh plugins/{per-directory-history,git}
znap source marlonrichert/zcolors
znap source marlonrichert/zsh-autocomplete
znap source zsh-users/zsh-autosuggestions
znap source zsh-users/zsh-syntax-highlighting
znap source jessarcher/zsh-artisan
znap source unixorn/fzf-zsh-plugin
# Extra init code needed for zcolors.
znap eval zcolors "zcolors ${(q)LS_COLORS}"
# autocomplete settings
zstyle ':autocomplete:tab:*' widget-style menu-select
zstyle ':autocomplete:*' fzf-completion yes
zstyle ':autocomplete:*' min-input 2
# ZSH Theme
znap prompt ohmyzsh/ohmyzsh robbyrussell
# aliases
alias ll='ls -l'
alias la='ls -la'
alias :q='exit'
alias fresh="source ~/.zshrc"
# localcommands
if [ -f ~/.dotfiles/shell/localcommands ]
then
source ~/.dotfiles/shell/localcommands
fi
# Tmuxinator autocomplete
if [ -f ~/.bin/tmuxinator.zsh ]; then
source ~/.bin/tmuxinator.zsh
fi
# Set vim as default editor
export EDITOR='nvim'
if _has ruby;
then
export PATH="$PATH:$(ruby -e 'print Gem.user_dir')/bin"
fi
#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!!
[[ -s "$SDKMAN_DIR/bin/sdkman-init.sh" ]] && source "$SDKMAN_DIR/bin/sdkman-init.sh"
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion