]> git.rmz.io Git - dotfiles.git/blobdiff - zshrc
zsh,bash: move aliases to $XDG_CONFIG_HOME
[dotfiles.git] / zshrc
diff --git a/zshrc b/zshrc
index dd2e117ec2464f95c9bdc01391fa2a255bb7cdd8..41c274749e86718011998531fa9d024cebe481c8 100644 (file)
--- a/zshrc
+++ b/zshrc
@@ -1,5 +1,8 @@
-# Path to your oh-my-zsh configuration.
-ZSH=$HOME/.zsh
+# Path to config files
+ZSH=$XDG_CONFIG_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
 
 # Load all of the config files in $ZSH/lib that end in .zsh
 for config_file ($ZSH/lib/*.zsh); do
@@ -16,11 +19,13 @@ 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
 
-autoload -U compinit; compinit
+# initialise completion
+[[ -d "$ZSH_CACHE" ]] || mkdir -p "$ZSH_CACHE"
+autoload -U compinit; compinit -d "$ZSH_CACHE/zcompdump"
 
 # miscelaneous options
 setopt extendedglob
-setopt csh_nullglob # if glob does not match, remove pattern, if no glob matches print error
+setopt cshnullglob  # if glob does not match, remove pattern, if no glob matches print error
 setopt numeric_glob_sort # sort numerically not lexically
 setopt noclobber    # don't allow overwriting files with '>', use '>!' instead
 setopt notify
@@ -29,20 +34,26 @@ setopt dvorak       # correct_all uses dvorak
 
 # populate path
 typeset -U path     # make path a unique array
+[[ -d ~/.local/bin ]] && path=(~/.local/bin $path)
 [[ -d ~/bin ]] && path=(~/bin $path)
 [[ -d /extra ]] && path=($path /extra/bin /extra/usr/bin /extra/sbin /extra/usr/sbin)
 [[ -d /opt/android-sdk ]] && path=($path /opt/android-sdk/platform-tools)
 
 # source aliases
-[[ -f ~/.aliases ]] && source ~/.aliases
+[[ -f ~/$XDG_CONFIG_HOME/aliases ]] && source ~/$XDG_CONFIG_HOME/aliases
 for alias_file ($ZSH/aliases/*.zsh); do
   source $alias_file
 done
 
 # vim stuff
+[[ -d "$XDG_CACHE_HOME/vim" ]] || mkdir -p "$XDG_CACHE_HOME/vim"
+export VIMINIT='let $MYVIMRC="$XDG_CONFIG_HOME/vim/vimrc" | source $MYVIMRC'
 export EDITOR=vim
 export VISUAL=vim
 
+# default browser
+export BROWSER=dwb
+
 # set up a few named directories
 hash -d Skaro=/mnt/Skaro
 hash -d ccr=~/ccr
@@ -50,7 +61,7 @@ hash -d src=~/src
 hash -d chroot_testing=/buildsystem/testing/buildroot
 hash -d chroot_master=/buildsystem/master/buildroot
 hash -d chroot_lib32=/buildsystem/lib32/buildroot
-hash -d wineprefixes=/mnt/sdd5/wineprefixes
+hash -d wineprefixes=/mnt/data/wineprefixes
 hash -d UniMaas=~/dropbox/Documents/UniMaas
 
 # set some env variables
@@ -58,7 +69,6 @@ export _gamedir=/mnt/Skaro/Games/Linux/HumbleBundle
 
 # ros
 if [[ -f "/opt/ros/groovy/setup.zsh" ]]; then
-    source /opt/ros/groovy/setup.zsh
     export ROS_WORKSPACE=~/src/ros
     export ROS_OS_OVERRIDE=arch
 fi