clang-format 相关问题

clang-format是一种格式化C / C ++ / Java / JavaScript / Objective-C / Protobuf代码的工具。

如何以 clang 格式对齐函数参数名称?

是否可以使用 clang-format 将结构体成员和函数参数名称格式化为列? 例如: 结构体 { 阿尔法; //与“beta”的“b”对齐 未签名...

回答 3 投票 0

在 Visual Studio 2022 中配置 C++ ClangFormat 以使用制表符而不是空格

我已将 Visual Studio 2022 配置为使用 LLVM ClangFormat 和“保留选项卡”。当我编辑并按 Tab 键时,编辑器会正确插入一个选项卡。但是当我粘贴项目或格式时...

回答 1 投票 0

为什么我的 clang-format 不支持 PPDirectiveIndentStyle 选项?

在 OSX 上安装了最新版本的 clang-format: $ brew 升级 clang-format 错误:clang-format 2018-04-24 已安装 $ clang-format-版本 clang-format 版本 7.0.0 (tags/google/stable/20...

回答 2 投票 0

很好地格式化 lambda 表达式的大括号列表

有什么方法可以设置 clang-format 来很好地*格式化这样的表达式吗? 富({ [](整数){ 酒吧(); 巴兹(); }, [](漂浮) {} }); 根据我当前的配置,这变得

回答 1 投票 0

clang-format 显示哪种样式选项应用于代码

我正在使用 clang-format (内置 VSCode)来格式化我的 CPP 代码,并且我的代码中有类似的内容(格式化之前): 输入 = {18, -11, ..., 11}; 大括号内有 100 个整数...

回答 2 投票 0

如何防止短 lambda 被分成两行?

我有一个关于 C++ lambda 的 clang 格式问题。升级到 Clang-Format 15.0.1 后,我注意到短的但不是在线 lambda 的新行为。我称它们为“两行 lambdas&qu...

回答 1 投票 0

如何使 clang-format 在打开函数大括号之前添加新行?

我有兴趣为函数添加左大括号(但不是 if 语句和其他上下文)。例如 无效 foo() { ... } 撇开口水战不谈,有没有理由不这样做呢?

回答 2 投票 0

clang-format 在自动格式化时忽略`**`

在我们部门,我们使用 C++ 的简化实现来为我们的工程师编写计算代码,然后在编译之前将其转换为 C++。 为了带来整个代码库,C++...

回答 1 投票 0

如何避免以 clang 格式格式化 XML、SQL 等原始字符串?

我有一些嵌入 XML 的 C++ 代码,如下所示: QLatin1String 测试() { 返回 QLatin1String(R"XML( 我有一些嵌入 XML 的 C++ 代码,如下所示: QLatin1String test() { return QLatin1String(R"XML( <ui language="c++"> <widget class="Test" name="dialogbuttonbox"> <property name="text"> <string>DialogButtonBox</string> </property> </widget> </ui>)XML"); } 格式化时使用 clang-format --style=WebKit test1.cpp 那么xml就会被格式化破了,因为RawStringFormat的定义: 如果 .clang-format 文件中没有定义样式 特定语言,使用“BasedOnStyle”给出的预定义样式。 如果未找到“BasedOnStyle”,则格式化基于 llvm 样式。 所以我在 .clang-format 中尝试了以下内容: RawStringFormats: - Language: None Delimiters: ['XML'] DisableFormat: true 这会导致以下错误: .clang-format:177:15: error: unknown enumerated scalar - Language: None 我真正想避免的是向源代码添加注释以关闭/打开格式: // clang-format off // clang-format on 所以我的问题是如何关闭 XML、SQL 或 clang-format 原始字符串不支持的格式? 上面的未知枚举标量消息又如何呢?这是否意味着不允许Language: None?那么也许我有一个功能请求? 我也有类似的问题。 我的解决办法是 将 XML 部分拆分到它们自己的文件中。 然后 clang 格式化程序不会触及它们,并且将使用您的标准 VS Code 格式化程序。 然后我需要将 maxLineWidth 设置为 0,这意味着由于列长度而没有新行。 .vscode/settings.json "xml.format.maxLineWidth": 0 根据 clang-format 14(Ubuntu 22.04 LTS 的默认版本)中的示例,原始字符串文字不存在格式问题。 不幸的是,你没有提到你使用的是哪个版本的 clang-format,所以测试所有版本是很乏味的。 运行您提供的命令后,仅更改了 3 行(我仅添加 -i 来获取文件中的内联更改): clang-format -i --style=WebKit test1.cpp 这是差异: QLatin1String test() - { - return QLatin1String(R"XML( +{ + return QLatin1String(R"XML( <ui language="c++"> <widget class="Test" name="dialogbuttonbox"> <property name="text"> @@ -8,5 +8,4 @@ QLatin1String test() </property> </widget> </ui>)XML"); - } - \ No newline at end of file +} 如您所见,没有修改任何包含原始字符串文字内容的行。

回答 2 投票 0

如何让clang格式不发表评论?

每次我创建名称空间或启动名称空间块时,clang-format 都会在名称空间结束处添加注释。我不想要这个。我该如何禁用它? 例子: } // 命名空间几何 我的

回答 1 投票 0

如何设置 clang 格式以将返回类型和原型保持在同一行

我正在发现 clang-format。我将 ColumnLimit 设置为 120。一般来说,这效果很好,意味着在不同的行上设置函数的参数。 void myLongFunctionNameMoreThan120Col(int foo, ...

回答 1 投票 0

clang-format 覆盖 WebKit 风格的多行注释

我正在尝试使用 clang-format 来清理我的存储库中的代码。我们使用 WebKit 样式作为格式化的基础,但是我们还想确保多行注释被格式化

回答 4 投票 0

clang-format:如何格式化“结构数组”初始化

对于一个复古的 C 项目,我有一个 ColumnLimit: 72 设置,并且所有大括号都应该在一个新行上:BreakBeforeBraces: Allman。另外我想实现 '

回答 1 投票 0

如何从条件语句开始而不是从 clang 格式的函数调用开始使用 ContinuationWidth?

这里有问题的代码片段: int open_server_socket(配置配置){ if (setsockopt(listenfd, SOL_SOCKET, SO_REUSEADDR, &optVal, 大小 (optVal)) < 0) { // THIS LINE...

回答 1 投票 0

停止 clang-format 来修改 CMake 替换字符串?

我有不同的项目,使用 CMake 模板将 CMakeList.txt 中的一些信息传播到 .cpp/.h 文件中。 CMake 使用夹在 @ 之间的替换字符串。 示例(在 MyAppConfig.in...

回答 1 投票 0

如何使用 clang-format 允许 2 行 if 语句

我正在努力为大型库设置样式格式检查。目前,我们的团队风格指南更喜欢使用“2 行”语句,而不是一行 if 语句,它看起来......

回答 1 投票 0

clang-format 未根据其配置文件格式化 C 头文件 (.h)

我正在运行 x86_64 GNU/Linux 机器,并在 neovim 中使用 clang-format 来格式化我的 C 代码。此外,我使用自己的 .clang 格式配置文件,该文件主要基于 Mozilla 的样式。 陈...

回答 1 投票 0

在一系列 git 提交上运行 git-clang-format

我写了一系列 git 提交,代码格式很糟糕。 在将它们推送到 github 之前,我想在每次提交时运行 git-clang-format,以在我的历史记录中获得格式良好的代码。 难道是……

回答 3 投票 0

如何设置 clang 格式以不修剪 C++ 文件末尾的空行?

我使用 VS Code for C++ 和 clang format 进行格式化。我喜欢在每个代码文件的末尾留下几个空行,但 clang 格式会修剪它们。我的 .clang 格式文件是: 基于风格:LLVM

回答 1 投票 0

尝试在 Windows 上执行 git-clang-format 时找不到 Python

我正在尝试在 Windows 10 上设置 git-clang-format。我安装了以下程序: git 蟒蛇3.11.5 LLVM 16.0.4(包括 clang-format 和 git-clang-format) 两个 python 可执行文件...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.