Когда я запускаю echo "${PATH//:/\n}"
в iTerm, я получаю
/usr/local/miniconda3/envs/te/bin
/Users/<user>/.nvm/versions/node/v10.11.0/bin
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
(Кстати, у меня есть conda activate te
в ~/.zshrc
.) В VS Code та же команда выводит
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/miniconda3/envs/te/bin
/Users/<user>/.nvm/versions/node/v10.11.0/bin
Это вызывает проблемы, потому что python
и conda
относятся к разным двоичным файлам внутри и снаружи кода VS.Снаружи я получаю python3
, как и ожидалось, тогда как в коде VS python
есть запас macOS python2
.
Причина переупорядочения пути, как я считаю, описана здесь :
Чтобы получить инструменты разработки для $ PATH, VS Code при запуске запускает оболочку входа в bash.Это означает, что ваш ~ / .bash_profile уже запущен, и когда запускается интегрированный терминал, он запускает другую оболочку входа в систему, потенциально изменяя порядок $ PATH.
Есть ли способ, которым я могу предотвратитьэто происходит без изменения
"terminal.integrated.shellArgs.osx": ["-l"],
на
"terminal.integrated.shellArgs.osx": [],
Мне нужна оболочка входа в систему, т. е. запустить ~/.zprofile
, чтобы включить conda
с
. /usr/local/miniconda3/etc/profile.d/conda.sh