Eclipse自动格式化功能使得JSF代码(XHTML)难以阅读

6

我有一个问题,如果我使用Eclipse中的快捷键CTRL + SHIFT + f自动格式化XHTML文件(JSF 1.2),输出结果看起来非常糟糕,不易读。

我的格式化代码:

<span class="label viertel alignright"> 
    <h:outputLabel for="itLine5" value="E-Mail:" /> 
</span>

变成这样:

<span class="label viertel alignright"> <h:outputLabel
       for="itLine5" value="E-Mail:" /> </span>

在这个小例子中,还是可读的 - 但在更长的代码中就变得混乱了!
我怎样才能确保我的XHTML代码格式清晰易读呢?
我使用的是Eclipse Helios的这个版本:
- Eclipse Java EE IDE for Web Developers. - Version: Helios Service Release 1 - Build id: 20100917-0705
我使用以下这些JBoss工具:
- JBoss Archies Tools 3.2.0 - JBoss Tools RichFaces 3.2.1 - JBossASTools 2.2.0 - Hibernate Tools 3.40.0 - JBoss Seam Tools: 3.2.1

1
好问题,如果有人能回答就太好了。 :) 我倾向于不自动格式化我的xhtml代码。 - Magnilex
1
我确信有一个适用于此的良好的代码风格检查模板,希望有人已经得到了! - Joergi
1
希望赏金能够帮助解决这个问题! - Joergi
你使用的是哪个版本的Helios?以及哪个版本的JBoss工具? - Magnilex
1
我下载了你的Eclipse版本,并尝试下载相同版本的Jboss工具,但没有成功。我尝试了市场和传统的更新站点,但都失败了。很抱歉,但我放弃了。 - Magnilex
显示剩余4条评论
2个回答

7
我认为我有一个足够好的解决方案(适用于Eclipse Juno)。许多标签/元素被指定为内联元素,导致奇怪的格式。例如,<span> 就在该列表中。您可以尝试删除内联元素列表(不用担心,您可以随时选择“恢复默认值”)。顺便改变一下宽度,将它设为比默认值更实用的数值(在我的情况下是72)。首选项可以在窗口>首选项>Web>HTML文件>编辑器中找到:

HTML文件设置

我从列表中删除了所有的内联元素,并对一个大的xhtml文件进行了格式化,取得了很好的结果。我将我的行宽设为120,这是我用来编写Java的行宽。当然,这个更改也会影响常规的HTML文件。 从您的示例中看,此代码:
<span class="label viertel alignright"> <h:outputLabel
        for="itLine5" value="E-Mail:" />
</span>

被格式化为:

<span class="label viertel alignright">
    <h:outputLabel for="itLine5" value="E-Mail:" />
</span>

这对你来说够好了吗?


这听起来不错,但我在 Helios 中找不到这个点,所以它对我的问题没有真正帮助。 - Joergi
1
真遗憾...升级到Juno? :) - Magnilex
1
最终,我们进行了更新...你的技巧完美地起作用了,你值得获得赏金,谢谢!!! - Joergi
很高兴听到这个消息。你也谢谢! - Magnilex

5
我不使用 CTRL + SHIFT + F 来格式化代码,而是仅使用 CTRL + I 来缩进。只有当选中整个页面的所有代码时,该功能才能正常工作,因此我使用 CTRL+A 来选择全部内容,然后使用 CTRL+I 进行缩进。

缩进功能保留换行符,并且仅缩进代码。我正在使用 Juno,希望在 Helios 中也能使用!


嗯,这并没有真正帮助到我,如果我的代码已经因为我使用“CTRL + SHIFT + f”而损坏 ;) 并且如果我有一个新的xhtml文件,它会让它看起来更漂亮,但是Tab键也存在一些副作用,这让它看起来很糟糕。 - Joergi
是的,你说得对。当标签不为空时会有一些副作用。我只是在编写 XHTML 时使用它作为快速修复方法。 - Daniela Mogini

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接