Last active
May 31, 2017 06:22
-
-
Save mbprabowo/196e18507433592c64c9026f9440562c to your computer and use it in GitHub Desktop.
Default
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Check for updates on initial load... | |
if [ "$DISABLE_AUTO_UPDATE" != "true" ]; then | |
env ZSH=$ZSH DISABLE_UPDATE_PROMPT=$DISABLE_UPDATE_PROMPT zsh -f $ZSH/tools/check_for_upgrade.sh | |
fi | |
# Initializes Oh My Zsh | |
# add a function path | |
fpath=($ZSH/functions $ZSH/completions $fpath) | |
# Load all stock functions (from $fpath files) called below. | |
autoload -U compaudit compinit | |
: ${ZSH_DISABLE_COMPFIX:=true} | |
# Set ZSH_CUSTOM to the path where your custom config files | |
# and plugins exists, or else we will use the default custom/ | |
if [[ -z "$ZSH_CUSTOM" ]]; then | |
ZSH_CUSTOM="$ZSH/custom" | |
fi | |
# Set ZSH_CACHE_DIR to the path where cache files should be created | |
# or else we will use the default cache/ | |
if [[ -z "$ZSH_CACHE_DIR" ]]; then | |
ZSH_CACHE_DIR="$ZSH/cache" | |
fi | |
# Load all of the config files in ~/oh-my-zsh that end in .zsh | |
# TIP: Add files you don't want in git to .gitignore | |
for config_file ($ZSH/lib/*.zsh); do | |
custom_config_file="${ZSH_CUSTOM}/lib/${config_file:t}" | |
[ -f "${custom_config_file}" ] && config_file=${custom_config_file} | |
source $config_file | |
done | |
is_plugin() { | |
local base_dir=$1 | |
local name=$2 | |
test -f $base_dir/plugins/$name/$name.plugin.zsh \ | |
|| test -f $base_dir/plugins/$name/_$name | |
} | |
# Add all defined plugins to fpath. This must be done | |
# before running compinit. | |
for plugin ($plugins); do | |
if is_plugin $ZSH_CUSTOM $plugin; then | |
fpath=($ZSH_CUSTOM/plugins/$plugin $fpath) | |
elif is_plugin $ZSH $plugin; then | |
fpath=($ZSH/plugins/$plugin $fpath) | |
fi | |
done | |
# Figure out the SHORT hostname | |
if [[ "$OSTYPE" = darwin* ]]; then | |
# macOS's $HOST changes with dhcp, etc. Use ComputerName if possible. | |
SHORT_HOST=$(scutil --get ComputerName 2>/dev/null) || SHORT_HOST=${HOST/.*/} | |
else | |
SHORT_HOST=${HOST/.*/} | |
fi | |
# Save the location of the current completion dump file. | |
if [ -z "$ZSH_COMPDUMP" ]; then | |
ZSH_COMPDUMP="${ZDOTDIR:-${HOME}}/.zcompdump-${SHORT_HOST}-${ZSH_VERSION}" | |
fi | |
if [[ $ZSH_DISABLE_COMPFIX != true ]]; then | |
# If completion insecurities exist, warn the user without enabling completions. | |
if ! compaudit &>/dev/null; then | |
# This function resides in the "lib/compfix.zsh" script sourced above. | |
handle_completion_insecurities | |
# Else, enable and cache completions to the desired file. | |
else | |
compinit -d "${ZSH_COMPDUMP}" | |
fi | |
else | |
compinit -i -d "${ZSH_COMPDUMP}" | |
fi | |
# Load all of the plugins that were defined in ~/.zshrc | |
for plugin ($plugins); do | |
if [ -f $ZSH_CUSTOM/plugins/$plugin/$plugin.plugin.zsh ]; then | |
source $ZSH_CUSTOM/plugins/$plugin/$plugin.plugin.zsh | |
elif [ -f $ZSH/plugins/$plugin/$plugin.plugin.zsh ]; then | |
source $ZSH/plugins/$plugin/$plugin.plugin.zsh | |
fi | |
done | |
# Load all of your custom configurations from custom/ | |
for config_file ($ZSH_CUSTOM/*.zsh(N)); do | |
source $config_file | |
done | |
unset config_file | |
# Load the theme | |
if [ "$ZSH_THEME" = "random" ]; then | |
themes=($ZSH/themes/*zsh-theme) | |
N=${#themes[@]} | |
((N=(RANDOM%N)+1)) | |
RANDOM_THEME=${themes[$N]} | |
source "$RANDOM_THEME" | |
echo "[oh-my-zsh] Random theme '$RANDOM_THEME' loaded..." | |
else | |
if [ ! "$ZSH_THEME" = "" ]; then | |
if [ -f "$ZSH_CUSTOM/$ZSH_THEME.zsh-theme" ]; then | |
source "$ZSH_CUSTOM/$ZSH_THEME.zsh-theme" | |
elif [ -f "$ZSH_CUSTOM/themes/$ZSH_THEME.zsh-theme" ]; then | |
source "$ZSH_CUSTOM/themes/$ZSH_THEME.zsh-theme" | |
else | |
source "$ZSH/themes/$ZSH_THEME.zsh-theme" | |
fi | |
fi | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment