J'aimerais utiliser tmux dans mon iTerm2.
et j'ai ce qui suit dans mon fichier ~/.tmux.conf.
set-option -g default-shell /bin/zsh
set-option -g default-command "/bin/zsh -c 'which reattach-to-user-namespace >/dev/null && exec reattach-to-user-namespace /bin/zsh -l || exec /bin/zsh -l'"
Dans mon iTerm2, j'ai aussi défini /bin/zsh comme mon shell par défaut. La sortie de echo $PATH
dans iTerm2 mais en dehors de tmux est le suivant :
/Users/alex/.pyenv/plugins/pyenv-virtualenv/shims
/Users/alex/.pyenv/shims
/Users/alex/tools/gradle-2.13/bin
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin
/Users/alex/.pyenv/bin
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
mais à l'intérieur de tmux, echo $PATH
imprime ce qui suit :
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/opt/X11/bin
/Users/alex/.pyenv/plugins/pyenv-virtualenv/shims
/Users/alex/.pyenv/shims
/Users/alex/tools/gradle-2.13/bin
/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin
/Users/alex/.pyenv/bin
Il semble que tmux ait mis le /usr/local/bin
etc devant mon paramètre PATH, ce qui fait que pyenv ne peut pas trouver le bon Python.
Mon ~/.zshenv
est :
alias vim="nvim"
PATH="/usr/local/bin:$PATH"
export PYENV_ROOT="$HOME/.pyenv"
PATH="$PYENV_ROOT/bin:$PATH"
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export GRADLE_HOME=/Users/alex/tools/gradle-2.13
export PATH=$GRADLE_HOME/bin:$PATH
export HOMEBREW_GITHUB_API_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxx
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
et mon ~/.zhrc
est :
export ZSH=$HOME/.oh-my-zsh
ZSH_THEME="robbyrussell"
plugins=(git)
source $ZSH/oh-my-zsh.sh
export LANG=en_US.UTF-8
if [[ -n $SSH_CONNECTION ]]; then
export EDITOR='vim'
else
export EDITOR='nvim'
fi
Alors qu'est-ce qui ne va pas ici ?
Est-ce que je rate quelque chose pendant le démarrage de tmux ?