dotfiles/zsh/.zshrc.symlink

73 lines
1.7 KiB
Bash

#!/usr/bin/env zsh
# Remove that annoying 'last logged in' message.
# Tested this method vs in iTerm settings - latter is less portable and slower.
printf '\33c\e[3J'
# Base path.
export PATH="$HOME/bin:/usr/local/bin:$HOME/dotfiles/bin:$PATH"
# Dotfiles root dir.
export DOT="$HOME/dotfiles"
# Projects dir.
export HACK="$HOME/hackin"
# Local environment variables.
if [[ -e $HOME/.local.env ]]; then
source ~/.local.env
fi
# All zsh dotfiles.
typeset -U config_files
config_files=($DOT/**/*.zsh)
# Load path files first.
for file in ${(M)config_files:#*/path.zsh}; do
source $file
done
#
# Initialize autocomplete.
autoload -U compinit
compinit
# Load everything else, except completion.
for file in ${${config_files:#*/path.zsh}:#*/completion.zsh}; do
source $file
done
# Load autocompletions.
for file in ${(M)config_files:#*/completion.zsh}; do
source $file
done
unset config_files
# Starship
export STARSHIP_CONFIG=$DOT/zsh/starship.toml
eval "$(starship init zsh)"
# Zsh Autosuggestions
source $(brew --prefix)/share/zsh-autosuggestions/zsh-autosuggestions.zsh
# The Fuck
eval "$(thefuck --alias)"
# Zsh Syntax Highlighting
# Must go last!!!
source $(brew --prefix)/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
# Herd injected PHP binary.
export PATH="/Users/marley/Library/Application Support/Herd/bin/":$PATH
# Herd injected PHP 8.2 configuration.
export HERD_PHP_82_INI_SCAN_DIR="/Users/marley/Library/Application Support/Herd/config/php/82/"
# Herd injected PHP 8.3 configuration.
export HERD_PHP_83_INI_SCAN_DIR="/Users/marley/Library/Application Support/Herd/config/php/83/"
# Herd injected PHP 8.1 configuration.
export HERD_PHP_81_INI_SCAN_DIR="/Users/marley/Library/Application Support/Herd/config/php/81/"