summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFranck Cuny <franckcuny@gmail.com>2016-03-23 09:28:03 -0700
committerFranck Cuny <franckcuny@gmail.com>2016-03-23 09:28:03 -0700
commit39548f2301ef4faf6cf19f4a6f379f183c6e2fc5 (patch)
treef8d3b7a16fca4aa0cecf86f06181f8be84274f38
parent[zsh] replace bash with zsh. (diff)
downloademacs.d-39548f2301ef4faf6cf19f4a6f379f183c6e2fc5.tar.gz
[zsh] clean up zsh config.
Keep as few files as possible, and document the order this files are loaded in OS X.
-rw-r--r--Makefile8
-rw-r--r--aliases10
-rw-r--r--docs/zsh.org7
-rw-r--r--zprofile (renamed from zshenv)8
-rw-r--r--zshrc23
5 files changed, 27 insertions, 29 deletions
diff --git a/Makefile b/Makefile
index bc9b2be..af15df7 100644
--- a/Makefile
+++ b/Makefile
@@ -4,11 +4,10 @@ INSTALL = \
aliases \
aspell.en.pws \
emacs.d \
- env \
gitconfig \
gitignore \
tmux.conf \
- zshenv \
+ zprofile \
zshrc
git:
@@ -18,7 +17,7 @@ git:
INSTALLED = $(patsubst %,$(INTO)/.%,$(INSTALL))
LN = @ln -sf
-install: $(INSTALLED) $(HOME)/bin $(HOME)/src $(HOME)/tmp $(HOME)/.ssh/authorized_keys git
+install: $(INSTALLED) $(HOME)/bin $(HOME)/src $(HOME)/.ssh/authorized_keys git
$(INTO)/.% : %
@[ ! -e $@ ] || [ -h $@ ] || mv -f $@ $@.bak
@@ -33,9 +32,6 @@ $(HOME)/bin:
$(HOME)/src:
mkdir -p $(HOME)/src
-$(HOME)/tmp:
- mkdir -p $(HOME)/tmp
-
check-dead:
@find ~ -maxdepth 1 -name '.*' -type l -exec test ! -e {} \; -print
@find ~/bin -maxdepth 1 -name '.*' -type l -exec test ! -e {} \; -print
diff --git a/aliases b/aliases
index 005d856..9349fa1 100644
--- a/aliases
+++ b/aliases
@@ -21,21 +21,11 @@ alias utc="date -u"
# tools
alias tmuxa="tmux new-session -A -s work"
-alias gerp="grep --color=auto"
alias grep="grep --color=auto"
-alias pjson="python -mjson.tool"
# git
alias g="git"
alias gclean="git clean -dfx"
-alias gst="git status"
-
-# navigation
-alias s="cd ~/src/source"
-alias eb="cd ~/src/source/eventbus"
-alias ops="cd ~/src/twitter-ops"
-alias science="cd ~/src/source/science/"
-alias gcode="cd ~/gocode/src"
# zsh stuff
alias zshrc="source ~/.zshrc"
diff --git a/docs/zsh.org b/docs/zsh.org
index 1f4afb7..5a34193 100644
--- a/docs/zsh.org
+++ b/docs/zsh.org
@@ -11,8 +11,11 @@ The configuration files are loaded in that order:
+ $HOME/.zprofile
+ /etc/zshrc
+ $HOME/.zshrc
-+ /etc/zlogin (if logging shell)
-+ $HOME/.zlogin (if logging shell)
++ /etc/zlogin (if login shell)
++ $HOME/.zlogin (if login shell)
** Tips
/etc/zshenv is run for all instances of zsh, it is important that it be kept as small as possible.
+
+** On OS X
+On OS X, terminal emulators are starting every shell as a login shells (since OS X doesn't source the profile).
diff --git a/zshenv b/zprofile
index 0d7c3aa..3843e85 100644
--- a/zshenv
+++ b/zprofile
@@ -7,13 +7,6 @@ export PAGER="less"
export TZ=America/Los_Angeles
export GOPATH="${HOME}/gocode"
-# FIXME enable auto completion - This is stupid, this should be in .zshrc
-autoload -U compinit
-compinit -C
-
-# this is for local stuff
-[ -f ~/.zshenv_local ] && source ~/.zshenv_local
-
# build the PATH
path=(
"$HOME/bin"
@@ -24,3 +17,4 @@ path=(
"/Applications/Racket v6.3/bin/"
$path
)
+
diff --git a/zshrc b/zshrc
index 52f9a1f..95f0f72 100644
--- a/zshrc
+++ b/zshrc
@@ -4,15 +4,30 @@
autoload -U colors
colors
+# enable auto completion
+autoload -U compinit
+compinit -C
+zstyle ':completion:*' completer _expand _complete _match _prefix
+
# I want word boundary to be similar to bash
autoload -U select-word-style
select-word-style bash
-local ret_status="%{$reset_color%}%(?:%{$fg_bold[green]%}➜:%{$fg_bold[red]%}➜)%{$reset_color%}"
-PROMPT="${ret_status} %1~ %# "
+# keep the prompt simple and short
+PROMPT="%1~ %# "
+
+# emacs style
+bindkey -e
# load custom aliases
source ~/.aliases
-# emacs style
-bindkey -e
+# aliases for some directories
+hash -d s="$HOME/src/source"
+hash -d eb="$HOME/src/source/eventbus"
+hash -d ops="$HOME/src/twitter-ops/"
+hash -d science="$HOME/src/source/science/"
+hash -d gcode="$HOME/gocode/src/"
+
+# this is for local stuff
+[ -f ~/.zlogin_local ] && source ~/.zlogin_local