如何突出显示忍者构建系统产生的错误?

Posted

技术标签:

【中文标题】如何突出显示忍者构建系统产生的错误?【英文标题】:How to highlight error generated with the ninja build system? 【发布时间】:2020-08-10 21:15:34 【问题描述】:

我如何在编译 cpp 时突出显示由 ninja 生成的错误和警告?当我遇到错误时,我只会看到白色文本,如果我可以突出显示错误和警告,它将提高可读性。

【问题讨论】:

您的问题非常不清楚。 How would I manage“管理”输出是什么意思? to highlight errors 高亮如何?你是什​​么意思? generated by ninja 你确定是 ninja 生成错误,而不是你的编译器吗?你是用cmake还是自己写ninja文件?最有可能你想阅读最有可能你想medium.com/@alasher/…。 Ninja 错误已显示为红色。不过,您可能希望将 stdout 和 stderr 分开。 ***.com/questions/637827/… 【参考方案1】:

您看不到错误,因为编译器注意到它没有将其消息输出到终端,因此默认为无颜色。使用 GCC,您可以使用 -fdiagnostics-color=always 命令行选项强制彩色输出。

【讨论】:

【参考方案2】:

如果仍然有人在这方面苦苦挣扎(就像我不久前那样),这对我有用:

正如 link 和 Oliv 强调的那样,需要强制 Ninja 使用颜色(通过 GCC 上的 -fdiagnostics-color>=4.9 或 Clang 上的 -fcolor-diagnostics

这将强制 Ninja 使用在 GCC_COLORS 环境变量中定义的格式来格式化特定的输出元素。

仅供参考:如果此变量为空字符串,则根本没有着色。

关于如何配置,请参阅https://gcc.gnu.org/onlinedocs/gcc-5.1.0/gcc/Language-Independent-Options.html,其中还包括默认配置作为示例。

【讨论】:

以上是关于如何突出显示忍者构建系统产生的错误?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 wxPython 中的文本控件传递突出显示的文本

VSCode语法错误突出显示不适用于C ++代码

针对突出显示的背景设置 UIButton 突出显示的标题文本,从而产生暗淡的文本

如何禁用 Vim 的 HTML 错误突出显示?

如何在 Rails 验证错误中突出显示字段

如何让 dbeaver 突出显示 sql 错误以便于开发过程