Запретить VS Code переупорядочивать $ PATH во встроенном терминале - PullRequest
0 голосов
/ 07 декабря 2018

Когда я запускаю 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
...