-
Notifications
You must be signed in to change notification settings - Fork 1
/
zshrc
84 lines (64 loc) · 2.83 KB
/
zshrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# Path to your oh-my-zsh configuration.
ZSH=$HOME/.oh-my-zsh
# Set name of the theme to load.
# Look in ~/.oh-my-zsh/themes/
# Optionally, if you set this to "random", it'll load a random theme each
# time that oh-my-zsh is loaded.
ZSH_THEME=""
# Example aliases
# alias zshconfig="mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"
# Set to this to use case-sensitive completion
# CASE_SENSITIVE="true"
# Comment this out to disable weekly auto-update checks
# DISABLE_AUTO_UPDATE="true"
# 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"
# Highlight all available matches
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets pattern cursor root)
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
plugins=(brew git github lein node npm osx python rake rvm zsh-syntax-highlighting history-substring-search ant command-not-found pip gitignore colored-man colorize)
source $ZSH/oh-my-zsh.sh
# Customize to your needs...
# `cd $0` if no other match; e.g. > code => > cd code
setopt AUTO_CD
# Allow comments in interactive mode, i.e. on the command line
setopt INTERACTIVE_COMMENTS
# Bigger history
export HISTSIZE=10000
export SAVEHIST=$HISTSIZE
setopt EXTENDED_HISTORY
# -R -- properly display color escape sequences (was on by default; necessary to include when changing)
# -s -- squeeze consecutive blank lines into one line
# -X -- don't clear the screen on exit
# -F -- immediately quit if the output fits on one screen; useful for `git diff` and short man pages
export LESS="-R -s -X -F"
# Use vim if it's available
hash vim 2>/dev/null && export EDITOR=vim
bindkey -v
# Explicit JAVA_HOME, for OS X
[[ -e /usr/libexec/java_home ]] && export JAVA_HOME="$(/usr/libexec/java_home)"
# Path
typeset -U path
path=(. /usr/local/bin "$path[@]")
hash npm 2>/dev/null && path+=("$(npm bin -g)")
hash brew 2>/dev/null && path+=("$(brew --prefix)"/bin)
[[ -d "$HOME"/code/automaton/bin ]] && path+=("$HOME"/code/automaton/bin)
export PATH
# Homebrew doesn't write anything outside of `brew --prefix`
# https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/Homebrew-and-Python.md#site-packages-and-the-pythonpath
hash brew 2>/dev/null && export PYTHONPATH="$(brew --prefix)/lib/python2.7/site-packages:$PYTHONPATH"
[[ -d "$HOME"/code/automaton ]] && export PYTHONPATH="$HOME/code/automaton:$PYTHONPATH"
export PYTHONPATH
if [[ -d "$HOME"/.zshrc.d ]]; then
for config in "$HOME"/.zshrc.d/*.zsh; do
source "$config"
done
fi
unset -v config