OS X Sublime Text3 使用 zsh shell

OS X Sublime Text3 to use zsh shell

我想构建一个 python 文件我收到以下错误:

/bin/bash: python: command not found

原因是我使用的是 zsh 而不是 bash。那么如何让Sublime查看/bin/zsh?

这表明您的路径不正确,而不是您通常使用的 shell。在 OSX 的情况下,GUI 应用程序的路径是通过与终端程序不同的方式设置的(您根据上面问题中的评论知道)。

无论如何,为了回答您的问题(以及供将来参考),Sublime 中用于执行包括构建系统在内的任务的 exec 命令是指定通过 [=28= 执行的内容].

使用 PackageResourceViewer 您可以从默认包中提取文件 exec.py 并将其使用“/bin/bash”修改为“/bin/zsh”(或任何其他 shell你想要的)你认为合适。

[编辑]

虽然上面的方法可行,但是当您从这样的包中覆盖文件时,您的覆盖将永远存在。也就是说,如果更新版本的 Sublime 包含不同版本的 exec.py,其中包含错误修复或更新的功能,您将看不到它们,因为您已经覆盖了文件。

所以要记住的一点是,如果您采用这条路线,您有责任始终使您的覆盖与当前发布的版本保持同步。当发现您已覆盖该文件时,执行问题的错误报告也可能会被置若罔闻或引起眼泪。

如果您只需要从 sublime 打开 zsh shell 而不是默认的 bash shell,那么有一种更简单的方法可以做到这一点。在 OSX/Mac 上,打开 perferences->package settings->terminal view->pallete commands。将 /bin/bash 更改为 /bin/zsh,如下所示。

{ "args" : {"title": "Terminal (bash)", "cmd": "/bin/zsh -l"}, },

这适用于 sublime text 3。尚未测试较低版本。

希望对您有所帮助!! 干杯!!

我在 Mojave 上运行良好。

sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/bin