集成终端设置:VS Code和iTerm返回zsh

16
我正在尝试将iterm用作vscode中的主要终端。我已经设置了"terminal.external.osxExec": "iTerm.app",但是我得到的是zsh而不是iTerm。在vscode中的终端截图 我可以右键单击文件并在iterm中打开,但我喜欢集成的终端,并希望在这里使用iTerm。
如何将iterm用作我的终端?

你能澄清一下你所说的“焦点终端”是什么意思吗?据我所知,VSCode有两种不同的终端集成。其中之一是集成终端,你可以通过例如“ctrl+`”(ctrl+反引号)来触发它,并且你可以自定义shell(bash、zsh等)。另一个是_外部_终端,你可以通过“⌘⇧C”来触发它。也许某些功能允许选择打开哪个终端,但我猜有些功能将被限制在集成终端上。那么你能澄清一下你想要使用iTerm的哪个功能吗? - Hugues M.
1
是的,我想使用iTerm作为我的集成终端。 - Joseph Chambers
好的,但你能澄清是哪个功能吗?没有这个澄清,答案就是“可以,只需键入正确的快捷键”。 - Hugues M.
当然,具体来说是我在iterm中使用的主题。 - Joseph Chambers
3个回答

44
您不能将iTerm设置为VS Code的集成终端。我在下面解释了原因。
iTerm不是一个shell,而是一个终端仿真器,它在您的情况下运行zsh shell。
我认为您混淆了Shell和终端仿真器的术语。
iTerm是一个终端仿真器。一些终端仿真器的例子是Gnome终端,Guake,Xterm等。它们提供一个显示给安装在操作系统中的Shell。
Shell是一个命令行界面,用于读取和解释您的命令。Shell的例子是默认在Linux中使用的bash以及其他Shell,如zsh,fish,sh。
Visual Studio Code集成终端使用Shell本身而不是终端仿真器。在Windows操作系统中,Shell和终端仿真器之间没有区别,因此Powershell和命令提示符都是Shell和仿真器。
但是,在类Unix操作系统中存在区别。
我相信您使用iTerm作为终端仿真器,并且使用的Shell是zsh(发音为Z Shell,这是bash Bourne Again Shell的一个分支)。

这里有一篇关于Unix Shell的维基百科文章,讲解了什么是Unix Shell。

这个链接是关于终端仿真器的,也讲述了终端的历史。

这个链接提供了一个可用的终端仿真器列表。iTerm是Mac OS的一个终端仿真器。


1
此外,VS Code 中已经移除了更改集成终端颜色的支持。有关更多详细信息,请参考此问题 - Kronos

10

虽然您可以使用此方法自定义您的终端

稍后请记得进入设置,然后分配新配置以覆盖默认配置

"terminal.external.osxExec": "iTerm.app",

"terminal.integrated.fontFamily": "Meslo LG S DZ for Powerline",

"terminal.explorerKind": "external",

1

被接受的答案已经准确回答了问题。

这里我想补充一点:

为什么你想要在集成的shell中使用iterm2? 我的答案是:我想要iterm2的“选择复制”功能。

实际上,vscode也有整合终端的这个设置!

设置 > 终端 > 整合: 选择复制

顺便说一下,vscode还可以让你分割终端,就像iterm2一样。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接