すごく環境依存なコードを.zshrcに書かなければならないことってありますよね。
そういう時は、.zshrcに直接書くのではなく、例えば、.zshrc.localというファイルを作り、
# 今使っているマシンでのみ有効にしたい設定を書く
## 例1:heroku toolbeltを有効にするためのパス
export PATH="/usr/local/heroku/bin:$PATH"
## 例2:Treasure Dataのtdコマンドを使うためのAPI_KEYの設定
export TREASURE_DATA_API_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
.zshrcファイルの最後で、以下のように読み込むようにすると良いです。
# どのマシンでも共通に使いたい設定を書く
# ...
# ...
[ -f ~/.zshrc.local ] && source ~/.zshrc.local
こうすると、.zshrc.localというファイルがない場合は読み込みが起こらないので、.zshrcをそのまま他人にあげたり、他のPCに持っていったりしても不具合が起こらない状態を維持できます。
ファイルの最後で読み込むのは、.zshrc.localで.zshrcの設定を上書きすることを出来るようにするためです。
[ -f hoge ]の意味の詳細は、man testと打って調べてください。(http://www.manpagez.com/man/1/test/)
応用
自分は、.zshrc.localの他に.zshrc.macも作っていて
# open new tab in same working directory on osx lion.
precmd () {print -Pn "\e]2; %~/ \a"}
preexec () {print -Pn "\e]2; %~/ \a"}
alias emacs='/Applications/Emacs.app/Contents/MacOS/Emacs -nw'
というようになっています。
他にも、どのPCでも使うけれど、個人用の設定があるという場合は、.zsh.personalを作って、その中に入れておくと良いのではないでしょうか。