2011-03-21 85 views
29

Eclipse的格式化选项避免了我与其他用户的很多冲突,并确保我的代码看起来总是“干净”(特别是关于我的git提交)。保存格式的C/C++代码

我知道Java编辑器中的“保存时格式”选项,但我在C/C++中找不到。

这是故意的吗?

我希望有一天能看到这样的选择吗?或者,也许我没有看够了?

+1

有些选项可以设置编码风格,以便在编辑时正确格式化。这不是你想要的吗? – 2011-03-21 13:34:38

+10

@Goulou:如果你真的希望人们回答你的问题,你应该**接受**以前的问题的一些答案。 StackOverflow不是**常规论坛。人们*应该以某种方式获得奖励,因为他们花在解决问题上的时间。 – ereOn 2011-03-21 13:47:49

+0

@波佩尔森:编辑时是否格式化所有内容?我不确定(尤其是当你直接粘贴代码时) – Goulou 2011-03-22 14:48:06

回答

3

保存在CDT中的格式现在在Eclipse Mars中实现。

+0

如何激活它?什么菜单选项? – Mawg 2016-09-07 07:15:18

+1

@Mawg C++编辑器,保存动作 – greywolf82 2016-09-07 19:26:31

+0

谢谢(+1),这将有助于他人(也许你可以编辑你的答案,使其更加明显)。真可惜我们不能为'source \ optimize includes>做同样的事情,就像他们可以为Java一样(如果将来有变化,有人可以请回答http://stackoverflow.com/questions/39363952/eclipse- CDT-自动化-优化-包括) – Mawg 2016-09-08 07:29:25

5

您可以使用“Ctrl + Shift + F”键来编辑已编辑的c/C++文件。

-3

您可以尝试选择所有代码,并使用Alt + F8进行格式化。 这是VC IDE的方式,但我不确定Eclipse是否可以工作。

16

我知道Java编辑器中的“保存格式”选项,但我在C/C++中找不到一个选项...或者我可能没有看上去够多吗?

恐怕选择就是不可用于CDT C++编辑器(Eclipse CDT的朱诺服务版本1):

Eclipse Juno C++ CDT Text Editor Save Action Options

这一切,是可以在日食IDE水平。

有可能会考虑解决您的顾虑两种解决方案:

  1. 你可能会考虑采取一些纪律,在其他的答案
  2. 运行适当的脚本在提交之前到您的源文件格式提及。 AStyle工具可能对此有所帮助。

还可以考虑为实际使用的Revision Control System运行脚本的自动预检/拦截拦截。许多修订/版本控制系统都提供这种功能。

我希望有一天能看到这样的选择吗?

你问过此功能在Eclipse/CDT community forum,或放置在Eclipse CDT bugzilla tracking system功能请求?如果没有人知道这种功能需求以及它是否被大多数用户需求,那么这个将由“意外”实现的机会很低。

3

我使用AStyle程序来遵循一组规则来格式化我的代码。目前,我是从CLI只有这样做,但我知道有一个plugin for eclipse,我还没有使用:

的astyle Eclipse是基​​于的astyle程序,它的目的是提供一个C/C++格式用于Eclipse中的CDT插件。所以所有支持的格式可选应检查astyle

+2

问题是,该插件是否提供'格式保存'功能(不能从这里显示的选项[这里(http://sourceforge.net/projects/astyleclipse/#screenshots) ) – 2013-01-23 21:34:55

2

在eclipse cdt中没有这样的默认选项。 您可以尝试编写自己的插件This eclipse论坛线程显示如何从eclipse插件调用CDT格式化程序。您只需要弄清楚如何在每次保存操作时触发插件调用。

+0

正如我所提到的,你需要考虑当前选择的格式策略,我猜这在这个插件中并不是很“微不足道”。我宁愿咨询开发者论坛1,为什么这个看似“微不足道”的选择还没有实现。 – 2013-01-29 21:30:24

+0

基本上相同的功能已经在JDT中实现。我也认为可能有一个原因,但Java世界已经做了一切。我想假设一个可能的原因是CDT没有从JDT中支持它,并且在撰写本文时没有CDT格式化程序或者没有JDT保存操作。在我看来,你必须编写一个保存动作监听器并注册该按钮.. – Alex 2013-01-30 06:17:40

+0

该按钮设置的常量被称为FORMAT_SOURCE_CODE,你会发现监听器的东西接近它。 – Alex 2013-01-30 06:21:23

0

下面是一个适合需求的插件:fos4cdt。 Eclipse Mars可能包含此功能,但许多用户将在一段时间内继续使用旧版本。所以,它可能很有用。