哪个配置将 vscode 应用于 git bash 以及如何复制它?

Posted

技术标签:

【中文标题】哪个配置将 vscode 应用于 git bash 以及如何复制它?【英文标题】:which configuration applies vscode to git bash and how to copy it? 【发布时间】:2019-05-23 06:02:02 【问题描述】:

我试图弄清楚当 vscode 使用 git bash 打开他们的集成终端时会做什么。

终端的独立运行方式与 vscode 中的 git bash 存在一些差异。例如,我运行一个玩笑测试时的颜色

独立:

vscode 内部:

另一个区别是当我执行npm install 时会发生什么。在独立模式下,在该过程完成之前,我不会收到任何关于正在发生的事情的反馈。在 vscode 里面我得到了这个:

当我需要安装一个大型新克隆项目的依赖项时,这尤其令人沮丧,因为有时我不知道 git bash 是崩溃了还是它仍在运行。

【问题讨论】:

【参考方案1】:

原因可能是TERM 环境变量的设置,它指定了使用的终端类型。 Git Bash 对此值使用一种设置(通常为cygwin),而Visual Studio Code 通常使用xterm-256color

此终端类型指定功能,cygwin 终端类型支持的颜色 (8) 少于 xterm-256color(支持 256)。另外,用 javascript 编写的程序通常不使用系统终端信息数据库,而是依赖于终端类型的硬编码列表,所以即使cygwin 支持某些功能,如果 JavaScript 库不知道它确实,npm 之类的程序将不支持使用这些功能并退回到更简单的模式。

【讨论】:

我明白了。我确实有 my config xterm-256 颜色作为类型,我确实看到了一些颜色(例如,文本“jest-reporter”在我的两个屏幕截图中具有相同的颜色)。那么有没有办法像 vscode 那样强制这种行为呢? 您需要检查终端类型是否实际设置为该值。在 Git bash 中运行 echo $TERM 应该打印 xterm-256color 如果这是设置的类型。如果没有,你可以尝试设置export TERM=xterm-256color,但如果终端不支持该设置,那么它可能无法正确渲染。 它说 256。另外我不确定是否应该将您的答案标记为正确,因为从技术上讲我确实说它不能被复制。

以上是关于哪个配置将 vscode 应用于 git bash 以及如何复制它?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Git Bash 添加到 VsCode

vscode (v1.57.0) 配置默认终端为git bash

Windows vscode 使用默认git bash

最新的vscode中修改默认的终端为Git Bash

最新的vscode中修改默认的终端为Git Bash

json 将vscode的终端更改为git-bash