【发布时间】:2018-09-14 22:44:27
【问题描述】:
我在 OSX High Sierra 上的 iTerm2 中使用 Insiders 版本和带有 ohmyzsh 的 zsh。
如果我在 VSCode 中启动集成命令行 echo $path 返回:
/Users/username/.yarn/bin:/Users/username/.cargo/bin:/usr/bin:/usr/bin/lldb:
/Users/username/bin:/usr/local/bin:/Users/username/.scripts:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
显然,节点路径、nvm 路径等丢失了,所以终端对我来说用处不大。
但是在 VSCode 之外的终端中输入 echo $path 会返回:
/Users/username/.nvm/versions/node/v9.0.0/bin /Users/username/.yarn/bin
/Users/username/.cargo/bin /usr/bin /usr/bin/lldb /Users/username/bin
/usr/local/bin /Users/username/.scripts /usr/local/bin /usr/bin /bin /usr/sbin
/sbin /opt/X11/bin
其中包含我的开发活动所需的所有路径。
我的~/.zshrc 中有这个别名:
code () { VSCODE_CWD="$PWD" open -n -b "com.microsoft.VSCodeInsiders" --args $* ;}
如果我使用来自外部终端的别名启动代码,则节点路径是正确的。
据我所知,这是因为从 Dock 快捷方式加载代码不会使用我的用户配置文件加载终端,因此它会从 /etc/zprofile 加载配置文件,它使用 /usr/libexec/path_helper 设置路径所以它错过了我发展所需的所有重要途径。
我怀疑大多数人更愿意使用他们的用户配置文件中的设置。这意味着我们所有的开发应用程序都可以在集成终端上运行,并且结束了由路径设置不当引起的臭名昭著的nvm is not compatible with the npm config "prefix" option 错误。
从 Dock 启动时,如何让 VSCode 使用我的用户配置文件中的终端环境?
【问题讨论】: