有没有办法折叠像“if”语句的eclipse子块?

目前Eclipse只能折叠java文档和function级别,但是当读取长的方法时,可能会有很多if / else等等,是否有办法折叠它们?

看起来Eclipse没有内置的支持折叠if / else语句,但允许折叠其他更复杂的情况,如匿名内部类。 尝试寻找像这样的插件(最后修改2007年,如果它支持您的Eclipse版本,尝试它)。

我find了Coffee-Bytes插件。 我从这个链接下载了它,并find作者的这个指南 ,使用它。

你可以在这些参考资料中find更多的细节

什么代码折叠插件在Eclipse 3.6上工作?
如何使用Coffee-Bytes代码折叠

在更新版本的Eclipse中

更改折叠首选项:

 Window -> Preferences -> C/C++ -> Editor -> Folding -> Enable folding of preprocessor branches (#if/#else) 

启用折叠使用ctrl + shift + /

不,在您可以select的首选项对话框(菜单窗口/首选项):Java /编辑/折叠中,

  • 注释
  • 头评论
  • 内部types
  • 成员和import

如果启用折叠被选中。

如果你不这样做,因为块太长,无法重构结构,你应该考虑将if / else块拆分成使用Alt-Shift-M(提取方法)的方法,

好吧,这个有点旧了,但也许有人会觉得这很有用:在大多数情况下,你可以通过一对额外的范围括号来包围这段代码,记住你折叠了什么,你可以添加一行注释。

例如,如果您想折叠以下内容:

 int SectionA_var1; int SectionA_var2; int SectionA_var3; int SectionA_var4; int SectionA_var5; int SectionB_var1; 

只需添加一个评论的括号:

 { // SectionA int SectionA_var1; int SectionA_var2; int SectionA_var3; int SectionA_var4; int SectionA_var5; } int SectionB_var1; 

然后你得到( – )标志,你可以将整个部分折叠为:

 { // SectionA[...] int SectionB_var1; 

没有必要的插件,直到现在我没有任何情况下,这给了我任何缺点,除了你不能用它在顶层声明中折叠方法。

看起来很奇怪,听起来像是开发者从来没有想过那样。 如果你有一个大的if语句或任何开关/循环…只是使用记事本++可以折叠/展开

对于Python,即Eclipse / PyDev,请转到Windows > Preferences > PyDev > Editor > Code Folding并检查所有的框。