7

我已经尝试将设置更改为"terminal.integrated.shell.windows"位置babun mintty。但是 babun shell 窗口单独打开并且不与 VS 代码集成。任何人都知道如何实现这一目标?

4

3 回答 3

10

经过2个小时的尝试,终于成功了。

在阅读我的做法之前,您可能想先解决这个问题

默认babun安装在C:\Users\13000\.babun\. 所以我们可以通过覆盖用户设置来配置它VS Code

"terminal.integrated.shell.windows": "C:\\Users\\YOURUSERNAME\\.babun\\cygwin\\bin\\zsh.exe",

保存后,重新加载窗口就完成了。

你会得到类似的东西:在此处输入图像描述

希望这可以帮助!

于 2017-05-27T17:58:29.943 回答
4

我之前一直在寻找这个问题的任何解决方案,但我找不到任何解决方案。但我很好奇Babun本身是如何从右键菜单中运行命令“ Open Babun here ”的,并注意到它运行了这个命令:

C:\Users\YOURUSER\.babun\cygwin\bin\mintty.exe /bin/env CHERE_INVOKING=1 /bin/zsh.exe

我尝试设置mintty.exeshell并使用前导命令作为shell 参数,但是这种方法会打开一个外部终端。我注意到这种行为是因为 using mintty.exe,所以我mintty.exeenv.exe它自己替换。最后,这些是设置:

"terminal.integrated.shell.windows": "C:\\Users\\YOURUSER\\.babun\\cygwin\\bin\\env.exe",
"terminal.integrated.shellArgs.windows": [
  "CHERE_INVOKING=1",
  "/bin/zsh.exe"
]

编辑:这可能与这个问题不完全相关,但由于有相似之处,我认为它可能值得一提。

在寻找解决方案的过程中,我看到了许多其他关于将Atom 的 PlatformIO IDE 终端包JetBrain 的 IDEBabun 的 zsh集成的问题。

对于Atom,将Shell Override设置为C:\Users\YOURUSER\.babun\cygwin\bin\env.exe并将Shell Arguments设置为在项目目录中作为集成终端CHERE_INVOKING=1 /bin/zsh.exe打开。zsh.exe

在 JetBrain 的情况下,我使用了 WebStrom,这很有效:

cmd.exe "/k C:\Users\ehsan\.babun\cygwin\bin\env.exe CHERE_INVOKING=1 /bin/zsh.exe"
于 2018-08-07T18:55:55.420 回答
0

只需补充Pramesh Bajracharya上面给出的正确答案,您就可以覆盖 VS Code 中的用户设置opening the VS Code并进入:

File->Preferences->Settings

然后粘贴在右侧 ( WORKSPACE SETTINGS) 中显示的字段中:

{
    "terminal.integrated.shell.windows": "C:\\Users\\YOURUSER\\.babun\\cygwin\\bin\\zsh.exe"
}

更多信息可以在https://code.visualstudio.com/docs/editor/integrated-terminal中找到

感谢 Pramesh Bajracharya!

于 2017-08-10T02:26:10.257 回答