97 lines
2.5 KiB
Bash
97 lines
2.5 KiB
Bash
#!/usr/bin/env zsh
|
|
|
|
# Base path.
|
|
export PATH="$HOME/bin:/usr/local/bin:$PATH"
|
|
|
|
# Path to your oh-my-zsh installation.
|
|
export ZSH="$HOME/.oh-my-zsh"
|
|
|
|
# Dotfiles root dir.
|
|
export DOT="$HOME/dotfiles"
|
|
|
|
# Projects dir.
|
|
export HACK="$HOME/hackin"
|
|
|
|
# Theme.
|
|
ZSH_THEME=""
|
|
|
|
# Use hyphen-insensitive completion.
|
|
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
|
HYPHEN_INSENSITIVE="true"
|
|
|
|
# Auto-update behavior.
|
|
# zstyle ':omz:update' mode disabled # disable automatic updates
|
|
# zstyle ':omz:update' mode auto # update automatically without asking
|
|
zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
|
|
|
# Display red dots whilst waiting for completion.
|
|
# You can also set it to another string to have that shown instead of the
|
|
# default red dots.
|
|
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
|
COMPLETION_WAITING_DOTS="true"
|
|
|
|
# Plugins to load.
|
|
# Standard plugins can be found in $ZSH/plugins/
|
|
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
|
plugins=(git zsh-syntax-highlighting zsh-autosuggestions colored-man-pages gh gulp iterm2 laravel macos npm nvm sudo thefuck)
|
|
|
|
# iTerm2 Shell Integration
|
|
if [[ "$(uname)" == "Darwin" ]] && [[ $(mdfind "iTerm.app") ]]; then
|
|
zstyle ':omz:plugins:iterm2' shell-integration yes
|
|
fi
|
|
|
|
# the fuck
|
|
eval $(thefuck --alias)
|
|
|
|
# zsh completions
|
|
fpath+=${ZSH_CUSTOM:-${ZSH:-~/.oh-my-zsh}/custom}/plugins/zsh-completions/src
|
|
|
|
source $ZSH/oh-my-zsh.sh
|
|
|
|
# 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
|
|
|
|
# Load everything else, except completion.
|
|
for file in ${${config_files:#*/path.zsh}:#*/completion.zsh}; do
|
|
source $file
|
|
done
|
|
|
|
# Initialize autocomplete.
|
|
autoload -U compinit
|
|
compinit
|
|
|
|
# Load autocompletions.
|
|
for file in ${(M)config_files:#*/completion.zsh}; do
|
|
source $file
|
|
done
|
|
|
|
unset config_files
|
|
|
|
# Starship
|
|
eval "$(starship init 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/"
|