格式化后无法在Eclipse中删除块注释

Ani*_*Dev 27 eclipse formatting

Eclipse的自动格式化程序会更改块注释,以便源>删除块注释不会完全删除块注释.源>添加块注释将时钟注释的开始和结束添加到代码行,但在运行格式化程序(Ctrl + Shift + F)后,它包装代码行并在每行的开头添加星号.当我尝试使用Source> Remove Block Comment删除块注释时,块注释的开始和结束将被删除,但不会删除每行开头的星号.

如何阻止Eclipse添加这些星号,或者在删除块注释的开头和结尾时删除星号?

例:

像这样的代码:

    String abc="abc";
    String def="def";
    System.out.println(abc+def);
    System.exit(0);
Run Code Online (Sandbox Code Playgroud)

添加块注释后会变为这样:

/*  String abc="abc";
    String def="def";
    System.out.println(abc+def);
*/  System.exit(0);
Run Code Online (Sandbox Code Playgroud)

应用格式后,这变为这样:

    /*
     * String abc="abc"; String def="def"; System.out.println(abc+def);
     */System.exit(0);
Run Code Online (Sandbox Code Playgroud)

使用"删除块注释"功能后,最终会如下所示:

    * String abc="abc"; String def="def"; System.out.println(abc+def);
    System.exit(0);
Run Code Online (Sandbox Code Playgroud)

小智 26

这可能是游戏中的一点,但我通过禁用块注释格式来解决这个问题.

Windows -> Preferences -> Java -> Code Style -> Formatter -> Edit -> Comments
Run Code Online (Sandbox Code Playgroud)

然后取消选中启用块注释格式.

  • 可悲的是,这不是一个好的解决方案.首先,我喜欢这样一个事实,即除了这些`*'之外它还会格式化块注释,特别是当我与其他人的最大线宽不同于我的时候.我可以格式化并调整到我的线宽.另一方面,当你在块注释中添加一个新行(命中"Enter")时,这并不会阻止Eclipse表单插入`*`. (2认同)

Cod*_*roc 13

另一个替代解决方案是在eclipse中使用块选择模式,它足够快并且仍然保持您的其他注释格式化.您只需按几个键即可删除评论.

在Windows中,您可以通过+ + 切换块选择模式.查看截图了解更多信息.ALTSHIFTA

要遵循的步骤,

  • ALT+ SHIFT+ A切换块选择模式
  • 选择评论的垂直部分
  • DeleteBackspace
  • 再次按ALT+ SHIFT+ A可禁用块选择模式
  • 保存文件,您最终取消了对代码的注释!

在此输入图像描述


spa*_*ack 7

我以前遇到过这个问题,我的解决方案只是使用Eclipse生成的行注释(//)而不是块注释.选择代码,然后按Ctrl- /或Ctrl-7为所选的每一行切换//.格式化后,这些行将缩进并格式化为文本,但如果删除注释(Ctrl- /或Ctrl-7)并重新格式化,一切正常.