叮当格式化程序多行格式配置错误

Clang Formatter multiline formatting config error

本文关键字:格式 配置 错误 格式化 程序 叮当      更新时间:2023-10-16

我在 vscode 如何格式化我的代码时遇到问题

我想要的格式:

std::cout << std::endl << "Something";

我得到的格式:

std::cout << std::endl
<< "Something";

我目前的配置:

"C_Cpp.clang_format_fallbackStyle": "{ BasedOnStyle: Google, IndentWidth: 4, ColumnLimit: 0}"

这似乎是ColumnLimit: 0<<运算符之间的交互。我用 6.0.0clang-format验证了这一点。使用配置器,我可以验证此缺陷首先出现在 3.6.0 版,并且通过 10.0.0 存在,所以这已经存在了一段时间。

有趣的是,即使>>正常工作,也只是<<运算符执行此操作。

我没有看到任何好的解决方法 - 你只剩下:

  • 忍受它。
  • 将 ColumnLimit 设置为其他内容。
  • operator<<而不是仅仅<<来浏览你的代码。例如,您将使用类似std::cout.operator<<(std::endl).operator<<("Something").