X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/a0caa96b5e23c05cf334cc4dd4d0dc15db130606..ba37fa63e8cdedbe958ab51a6aaddcfa4ed2f65d:/zshrc diff --git a/zshrc b/zshrc index 307d8e6..7ad8443 100644 --- a/zshrc +++ b/zshrc @@ -1,57 +1,52 @@ -# Path to your oh-my-zsh configuration. -ZSH=$HOME/.zsh +# Path to config files +ZSH=$XDG_CONFIG_HOME/zsh +[[ ! -d "$ZSH" ]] && echo "Missing config dir: '$ZSH'" && 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/ -# Optionally, if you set this to "random", it'll load a random theme each -# time that oh-my-zsh is loaded. +# Look in $ZSH/themes ZSH_THEME="ramsi" +[[ -f "$ZSH/themes/${ZSH_THEME}.zsh-theme" ]] && source "$ZSH/themes/${ZSH_THEME}.zsh-theme" -# Set to this to use case-sensitive completion -CASE_SENSITIVE="true" - -# Comment this out to disable bi-weekly auto-update checks -DISABLE_AUTO_UPDATE="true" - -# Uncomment to change how many often would you like to wait before auto-updates occur? (in days) -# export UPDATE_ZSH_DAYS=13 - -# Uncomment following line if you want to disable colors in ls -# DISABLE_LS_COLORS="true" - -# Uncomment following line if you want to disable autosetting terminal title. -# DISABLE_AUTO_TITLE="true" - -# Uncomment following line if you want red dots to be displayed while waiting for completion -COMPLETION_WAITING_DOTS="true" - -# Which plugins would you like to load? (plugins can be found in ~/.zsh/plugins/*) -# Custom plugins may be added to ~/.zsh/custom/plugins/ -# Example format: plugins=(rails git textmate ruby lighthouse) -plugins=(git) +# 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 -source $ZSH/oh-my-zsh.sh +# initialise completion +[[ -d "$XDG_CACHE_HOME/zsh" ]] || mkdir -p "$XDG_CACHE_HOME/zsh" +autoload -U compinit; compinit -d "$XDG_CACHE_HOME/zsh/zcompdump" # miscelaneous options -setopt beep 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 setopt rcquotes # echo 'don''t'; prints don't +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) - -# 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 +[[ -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 +for alias_file ($ZSH/aliases/*.zsh); do + source $alias_file +done + +# vim stuff +export EDITOR=vim +export VISUAL=vim +export BROWSER=dwb # set up a few named directories hash -d Skaro=/mnt/Skaro @@ -60,4 +55,14 @@ 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 +export _gamedir=/mnt/Skaro/Games/Linux/HumbleBundle + +# ros +if [[ -f "/opt/ros/groovy/setup.zsh" ]]; then + export ROS_WORKSPACE=~/src/ros + export ROS_OS_OVERRIDE=arch +fi