【问题标题】:Word wrap in Eclipse Java? [duplicate]Eclipse Java 中的自动换行? [复制]
【发布时间】:2011-06-02 01:48:58
【问题描述】:

我已经有 Eclipse PHP (How can I get word wrap to work in Eclipse PDT for PHP files?) 的自动换行。 Eclipse Java 怎么样?是否有类似的工具来包装 Java 代码行?

【问题讨论】:

  • 对于那些每次打开文件都没有启用插件的人,你总是可以使用Ctrl+Shift+F(自动格式化),它会打破所有的长行。 :)))))))
  • 我已经在 eclipse Juno 中安装了插件,但是我找不到任何上下文菜单图标或与之相关的任何其他控件。我不知道如何让它工作。 :S

标签: java eclipse eclipse-plugin word-wrap lines


【解决方案1】:

Ctrl+Shift+F 将在 Eclipse 中格式化文件,将长行分成多行并很好地换行 cmets。您还可以仅突出显示部分文本并设置其格式。

我意识到这不是自动软/硬自动换行,但我认为这个问题并没有要求任何花哨的东西。

【讨论】:

    【解决方案2】:

    就像指出自动换行在代码中是一个糟糕的想法。我想每个人都有自己的风格,但通常你应该重构或重新考虑那些占用比单个平均水平屏幕更多的代码块。 (约 1280 像素)

    当然,总会有例外......例如详细的例外,但这些对于代码理解并不重要。

    扫描超出单个水平屏幕的行,或者必须阅读堆叠在多行上的想法,将使您的代码更难理解。

    此外,行数会很奇怪,因为自动换行会使单行看起来占用 2、3 行,或者让人不寒而栗...... 4 行代码。

    就 cmets 而言,换行对任何人来说都不是什么大问题。

    另外请记住,自动换行代码并不是一种常见的做法,而且您实质上是在说每个阅读您的代码的人都应该打开自动换行,我很抱歉地说,这是一件让别人感到不必要的痛苦的事情使用你的代码做......

    如果嵌套导致您需要自动换行......这也是一种非常糟糕的代码气味。

    这是我的两分钱。

    【讨论】:

    • @Nickolas 你是对的。从您的角度来看,Ctrl+Shift+F 效果更好,因为它在逻辑上打破了长行并使其成为漂亮的代码。当然,长线是要避免的(根据定义),但是如果你调用方法来用他自己的参数实例化一些新对象,那么就不可能这样做,更不用说你是否必须通过点调用连接方法( .)。这样的线很丑但很有必要。
    • @askmo 我不认为代码应该被人为地格式化来模拟自动换行......这是一个更糟糕的主意。我的主要观点是,如果您经常创建跨越多个屏幕的代码行,那么您就做错了。我承认总是有例外,但这些例外应该是非常罕见的。代码首先应该是干净且易于理解的,我发现需要自动换行的代码不太可能是可读的代码库。
    • Nicholas,我完全同意你的看法,但在我的情况下,我正在编辑纺织文档,而不是代码,所以在这种情况下它会变得非常有用......
    • 对于代码我同意,但是 PHP 文件可以包含 HTML,其中可以包含文本段落。就个人而言,我宁愿选择将这些保留在一行上,并在编辑时使用软自动换行。
    • 有时您需要并排查看几个文件。如果他们能暂时换成 20 列就好了。
    【解决方案3】:

    这适用于在 Texlipse 中对“Ahtik”自动换行插件有以下问题的任何人:该插件安装良好,但使用上下文菜单选择“自动换行”选项(或按 ctrl+alt+ w) 使文本暂时换行,然后轻弹回到展开状态(这可能包括使用 Windows 7 的任何人)。

    这是一个修复...直接来自开发者本人!我给 Ahti Kitsik 发了电子邮件,最后一次尝试找到解决办法,当他真正找到解决方案并在第二天将其发送给我时,我感到很惊讶。他建议作为回报,我可以将这些信息广泛传播。

    那么,解决方法如下:

    查找 texlipse 插件位置。这可能在 Eclipse 文件夹中,地址可能会结束:...\eclipse\plugins\net.sourceforge.texlipse_1.5.0。

    备份 plugin.xml 文件以防万一,然后通过删除以下代码块来编辑原始文件:

    -首先,“动作”(从第843行开始):

    动作

              class="net.sourceforge.texlipse.actions.TexWordWrapAction"
               definitionId="net.sourceforge.texlipse.commands.texWordWrap"
               icon="icons/wrap.gif"
               id="net.sourceforge.texlipse.actions.texWordWrap"
               label="W&rap text"
               menubarPath="net.sourceforge.texlipse.menus.latex/latexGroup"
               style="toggle"
               toolbarPath="latexGroup"
               tooltip="Use word wrap"
    

    -其次,“命令”(从第 972 行开始):

    命令

            categoryId="net.sourceforge.texlipse.latexEditingCategory"
            name="Wrap text"
            id="net.sourceforge.texlipse.commands.texWordWrap"
    

    (完成此操作后,文件应为 1257 行,而不是 1271 行)。

    最后,Ahti 说:“使用 -clean 命令行参数启动 eclipse 以强制重新加载 plugin.xml。” (我个人不知道该怎么做,所以我只是删除并重新安装了他的插件,然后退出 Eclipse,并在重新启动之前编辑了代码。

    该功能现在应该可以正常工作了。希望这可以帮助某人。再次感谢阿赫蒂!

    【讨论】:

    • 答案很好,但最后一行是不必要的。 (“这个功能……又是阿赫蒂!”)+1
    • 有人明白这条评论的意义吗?
    • “新帖子”类别要求您在说“我已经完成”之前发表评论
    • 我已经尝试过了,但它不起作用;/ 使用最新的 eclipse、texeclipse 和 ahti。我做了eclipse -clean。当从属性中使用“自动换行”时,它似乎可以工作,但一秒钟后又恢复到原来的样子。我可以使用“正确的换行”来获得良好的效果,但它似乎只适用于每个段落,而且我猜是硬换行。
    【解决方案4】:

    与此同时,Ahtik 的自动换行插件有一个分支,我必须说,它工作得非常好,并且修复了混乱的行编号错误:Eclipse Word-Wrap Plug-In

    【讨论】:

    • Luna 需要更新,但已经在进行中,这是一个更好的实现。
    【解决方案5】:

    打开 Eclipse -> 帮助 -> 安装新软件 -> 单击“添加..”按钮并将此行“http://dev.cdhq.de/eclipse/updatesite/luna/”复制到字段名称和位置 -> 单击确定

    检查 -> 行号标尺和自动换行功能 -> 下一步 -> 下一步 -> 完成 -> 重新启动 Eclipse!

    【讨论】:

    • 可悲的是,它似乎不再适用,或者至少它不适用于火星中的 Texlipse 和 LateX 透视图。我真的很喜欢 Eclipse 为我的 LateX 项目提供的文件管理和自动构建功能,遗憾的是缺少基本的自动换行功能让我无法切换。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-01
    • 1970-01-01
    • 2021-03-22
    • 2011-06-27
    • 2012-05-11
    • 1970-01-01
    相关资源
    最近更新 更多