- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
CDT 代码格式化程序有相当多的选项可供选择,但它似乎并没有允许人们告诉它忽略一段代码的功能。此功能存在于 Java 代码格式化程序中:
// @formatter:off
... // code that should not be formatted
// @formatter:on
此功能是否存在而我只是不知道,或者有人知道任何体面的解决方法吗?
在我的特定情况下,我正在尝试定义我想要具有特定布局的数据结构(枚举类型和字符串数组)。
最佳答案
使用Astyle(Artistic Style)格式化程序,它远远优于Eclipse CDT内置格式化程序,并且具有您需要的功能:
http://astyle.sourceforge.net/astyle.html#_Disable_Formatting
例子:
#include <iostream>
int main(int argc, char** argv)
{
// *INDENT-OFF*
std::cout<<"hello world"<<'\n';
// *INDENT-ON*
}
使用 astyle 格式化不会缩进//INDENT-OFF 和//INDENT-ON 之间的代码,但它也会禁用 astyle 所做的任何其他格式化功能,就像本例中指令的间距一样。
我自己使用它配置为外部工具。唯一的问题,外部工具没有热键,但是“运行上次启动的外部工具”只有一个热键,如果你只使用一个外部工具,它的工作原理是一样的。
更多配置细节(linux):
风格:
您可以从您的分发存储库或通过官方网站轻松获取它。
使用格式设置设置配置文件:
http://astyle.sourceforge.net/astyle.html#_Options_File
我使用主文件夹变体,只需在您的 $HOME 中创建一个 .astylerc,我的包含:
--suffix=none
--style=allman
--indent=tab=4
--max-code-length=70
--close-templates
--keep-one-line-blocks
--break-elseifs
--break-closing-brackets
--align-reference=type
--align-pointer=type
--indent-classes
--indent-modifiers
--indent-switches
--indent-cases
--indent-labels
--indent-col1-comments
--min-conditional-indent=0
--pad-oper
--pad-header
--unpad-paren
eclipse :
“运行”菜单 --> 外部工具 --> 外部工具配置... 添加一个新的“程序”并在配置窗口中:
位置:/usr/bin/astyle(使用 whereis 或 locate 来检查)
工作目录:${project_loc}
参数:${selected_resource_loc}
在同一窗口中,刷新标签页:
完成后勾选刷新资源。
勾选“所选资源”
同一窗口,通用标签:
关于c++ - 如何为代码块禁用 Eclipse CDT 代码格式化程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16886890/
我已经用 eclipse-cdt 很好地设置了一个项目。我不是从 eclipse 构建的,但是索引器可以工作,并且我的所有 makefile 设置都被选中,包括第三方库头文件。 然而,我想要的是能够查
我正在使用 Eclipse IDE for C/C++ Developers (Eclipse Ganymede Package - version 3.4.2)在 Windows XP 上使用 Mi
在 eclipse CDT 4.2 中,我只想包含几个文件夹作为资源。例如“/root”是创建项目“myproject”的地方。我只想包含这些文件夹并排除任何其他文件夹。 /根/A /根目录/B /根
我已经下载了最新的 Eclipse CDT 版本 (Helios),并想尝试一些 C++ 编程(很久没有这样做了)。 我试图做“Hello World”项目,但我很快就卡住了。 第一件事 - #inc
我已经离开 Eclipse CDT 一段时间了,并且被 JetBrains 优秀的 IDE 宠坏了(公司不让我拥有 Clion )。诚然,这些主要用于解释型语言,而不是编译型语言,因此评估更简单。 当
有没有办法让 Eclipse CDT 在每次构建项目时自动增加构建版本号?我可以找到 ANT 的解决方案,但我知道这仅适用于 Java 项目。 最佳答案 不,ANT 不仅适用于 Java 项目。它主要
我在 C++ Makefile 项目中使用 Eclipse CDT(Helios 版本,CDT 7.0)。由于我是 Eclipse 的新手,我想知道如何正确管理包含目录。我#include 通常没有任
我有一个包含多个项目的工作区,所有项目都可以正常编译。然而,由于未解析的包含,一些项目在编辑器中给出了很多关于未解析符号的警告。大多数是来自工作区中其他项目或第三方库的头文件。 谷歌搜索表明这是索引器
我想将我的 CDT 项目提交给 SVN。我是关于 CDT 的新手,我想知道描述该项目的文件。 相关文件似乎是: 。项目 .settings(目录) .c项目 .csettings(目录) .proje
有没有办法在eclipse CDT中为类生成模板自定义包含保护的格式?当前格式为 _H ,但我想要的是类似 ___H .并不是说我希望在我自己的项目中的不同命名空间中有同名的类,但我不想在出现这种情况
每当我从构建中排除 .h 文件并稍后重新包含它时,项目资源管理器中的 .h 文件的图标都会有一个图钉装饰。我查看了 CDT 用户指南,但它不在他们的 list of icons 上。图钉是什么意思?
使用 Eclipse CDT 7.0,在进行 headless 构建时,是否可以指定在命令行上仅构建单个构建配置? 最佳答案 我想我找到了自己问题的答案,主要是通过玩 CDT 8.0 和 indigo
有没有办法在 Eclipse 2020-03 (CDT 9.11) 中启用对 C++20 功能的支持?我的意思是摆脱不正确的语法高亮显示,例如忽略新添加的关键字,如“概念”、“要求”和 C++20 标
我在 Linux 上使用 Eclipse (galileo) 和当前版本的 CDT。而且我不能设置断点!它运行起来很有趣,调试得很好,并在 main 中停止……但是像我多年前用 CDT 那样双击左边距
我最近(实际上是今天)开始使用 Eclipse CDT for windows。创建了一个项目,将一个测试 C 文件(Hello World)添加到项目中。构建项目,出现如下错误。 Error: Pr
我有一个 chroot 环境,其中包含使用 make 构建复杂 C++ 项目所需的一切(适用于特定的 Linux 发行版)。 我想在这个项目中使用 Eclipse CDT(在 chroot 环境之外)
eclipse cdt 如何使用 TM/RSE 管理和构建远程文件??是否有使用 Windows 中的 Eclipse CDT 和 Linux 中的源代码和编译器的项目用法示例? 腾讯 最佳答案 Ta
我正在测试 Eclipse 的 CDT 包。我正在尝试用 C 编译和运行一个简单的 Hello World 程序。 #include int main(void { printf("
大家好, 我已经使用 GCC 安装了 Eclipse CDT 和 MinGW。 将 mingw\bin 添加到我的路径环境变量中。 尝试使用 HelloWorld 向导创建新的 C++ 项目时,出现构
我正在开发 CDT eclipse 插件,我正在尝试使用以下代码使用 CDT 代码获取 eclipse 项目资源管理器中存在的源文件列表,结果为空。 案例1: IFile[] files2 = Res
我是一名优秀的程序员,十分优秀!