+# Path to config files
+ZSH=$XDG_CONFIG_HOME/zsh
+ZSH_DATA=$XDG_DATA_HOME/zsh
+ZSH_CACHE=$XDG_CACHE_HOME/zsh
+[[ ! -d "$ZSH" ]] && echo "Missing config dir: '$ZSH'" && return
+[[ ! -d "$ZSH_CACHE" ]] && echo "Missing cache dir: '$ZSH_CACHE'" && return
+[[ ! -d "$ZSH_DATA" ]] && echo "Missing data dir: '$ZSH_DATA'" && return
+
+# Load all of the config files in $ZSH/lib that end in .zsh
+for config_file ($ZSH/lib/*.zsh); do
+ source $config_file
+done
+
+# Set name of the theme to load.
+# Look in $ZSH/themes
+ZSH_THEME="ramsi"
+[[ -f "$ZSH/themes/${ZSH_THEME}.zsh-theme" ]] && source "$ZSH/themes/${ZSH_THEME}.zsh-theme"
+
+# load my functions
+typeset -U fpath # make fpath a unique array
+[[ -d $ZSH/functions ]] && fpath=($ZSH/functions $fpath)
+autoload -U ${fpath[1]}/*(:t) # loads all functions in the first element of fpath
+
+# initialise completion
+autoload -U compinit; compinit -d "$ZSH_CACHE/zcompdump"
+
+# miscelaneous options