【问题标题】:How to disable Eclipse's "auto-folding during typing"?如何禁用 Eclipse 的“打字时自动折叠”?
【发布时间】:2014-03-07 10:55:41
【问题描述】:

Eclipse(任何版本的 AFAIK)有一些与 Java 代码折叠相关的奇怪行为。假设我正在编辑这个类:

class A {
  String field;
  @Nonnull 
  Object method(){
    // whatever
  }
}

如果启用折叠并且我告诉它折叠所有内容(在我的中是 Control-NumSlash,但可能是自定义的),则该方法被正确折叠,即它仅显示该方法的 Object method()...。一切都好,直到现在。

困扰我的部分是,如果我将光标移动到field; 之后,按 Enter,然后输入类似“public”之类的内容,然后停一秒钟,Eclipse 会自动将该单词折叠到下面的方法中.

这似乎是合理的(大概是假设我想将该限定符添加到方法中);但在实践中,我实际上在做的是尝试添加一个新方法,并停下来思考它的返回类型或者它的名称。 (如果我想修改方法,我会先展开它,因为它可能已经有那个限定符,折叠。)

我非常讨厌这个“功能”,但我终其一生都无法找到如何禁用它,甚至无法找到该死的插件(Eclipse 一直坚持我不应该被允许删除) ) 对此负责,因此我可以提交错误报告。

那么,有谁知道 (1) 这种行为从何而来,希望 (2) 我怎样才能摆脱它但保持手动折叠?谢谢!

(作为记录,我使用的是 Kepler SR1,但这种行为可以追溯到很长一段时间,至少五年左右。)

【问题讨论】:

    标签: eclipse folding eclipse-jdt


    【解决方案1】:

    我不相信有任何方法可以阻止它这样做,除非您只是养成在public 之后放置分号; 或关闭花括号} 的习惯,这可以防止Object method(){.. '折叠' 起来。我相信它的编写是为了将所有内容折叠到最接近的分号,这就是为什么还包括@Nonnull

    我能找到的唯一折叠选项位于 Window > Preferences > Java > Editor > fold

    我认为这是一个错误,或者只是一个具有意外副作用的功能。

    很有趣,如果你输入几乎任何符号或拼写错误public,它就不会折叠它。

    【讨论】:

    • 关于输入符号的要点,谢谢。括号也可以。在我有时间弄清楚如何提交补丁之前,我可能会尝试这样做。
    • 这种行为在写作时仍然会分散很多注意力。即使 7 年后,我也只能找到解决问题的答案,而以 IDE 喜欢的方式编写代码的解决方案是糟糕的 DX。有没有更好的解决方案?
    • @Mathias 如果它已经困扰你 7 年了,你为什么还没有提出补丁呢?可能大多数人(包括我)从来没有遇到过这个问题,因为他们不使用 Collapse All 或使用内容辅助来创建方法(例如,输入 pub 然后,不打盹,点击Ctrl+Space;打开内容辅助可防止隐藏某些内容)。即使它发生在我身上,我也只需按 Ctrl+Q(或 Ctrl+Alt+Left)即可返回上一个编辑位置。
    猜你喜欢
    • 2011-11-07
    • 2021-04-10
    • 1970-01-01
    • 1970-01-01
    • 2011-08-16
    • 2015-12-10
    • 2023-04-03
    • 2013-11-12
    相关资源
    最近更新 更多