在Eclipse中格式化XML代码

72

在Eclipse中编写.xml文件时,我经常需要手动缩进代码。例如:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@color/background"
android:layout_height="fill_parent"
android:layout_width="fill_parent" />
经过格式化后,它的样子是这样的。
<?xml version="1.0" encoding="utf-8"?>
   <LinearLayout   
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:background="@color/background"
      android:layout_height="fill_parent"   
      android:layout_width="fill_parent" />

如何自动化这个过程?我在 Eclipse 中找不到 XML 的格式设置。


14
CTRL + A 选择整个文本,然后 CTRL + SHIFT + F - Sanjay T. Sharma
我知道这个功能。在哪里设置它?我在Window->Preferences->XML中找不到它。我不喜欢它截断属性的方式。 - sandalone
6个回答

121

Ctrl+Shift+F

我会为您执行此操作,并且您可以在其中进行配置。

Window -> Preferences -> XML -> Xml Files -> Editor

我知道这个功能。在哪里设置它?我在Window->Preferences->XML中找不到它。我不喜欢它截断属性的方式。 - sandalone
8
如果在“窗口”->“首选项”->“XML”->“XML文件”->“编辑器”的选项不够用,那么我不知道答案。 - Denis Palnitsky
1
我花了一些时间才弄清楚Eclipse XML编辑器实际上有两个“子选项卡”,“设计”和“源代码”,而这仅适用于“源代码”选项卡。这些“子选项卡”位于实际编辑器选项卡/视图下方。 - Greg Kramida
这对我并没有解决问题,因为它不像 Java 一样有“保存操作”菜单。如果我有一个已经包含制表符和空格的文档,当我点击保存时,制表符并不会被移除并转换为空格。 - WORMSS
然后"[v] 将多个属性拆分到新行",然后重新启动 Eclipse。 - Park JongBum

38

如上所述,Ctrl+Shift+F可以自动格式化。不过,默认情况下Eclipse会以一种幼稚的方式拆分属性。如果您像我一样希望所有属性都在自己的行上,请进入窗口→首选项→XML→XML文件→编辑器,并勾选将多个属性拆分到新行上


15
你需要使用XML编辑器打开文件,切换到源代码视图,然后执行Ctrl + Shift + F的操作。

为了使CTRL+Shift+F键组合起作用,必须使用XML编辑器打开XML文件。这一点非常重要。 - Velusamy Velu

14

针对Macintosh用户使用CMD + SHIFT + F


在OSX Mavericks下,使用Eclipse Luna建模工具配置,这对我不起作用。 - Jim L.
这是自动格式化的正确“默认”键序列。可以更改它,或者使用插件更改/干扰它。这可能很烦人! - Donal Fellows

3

打开窗口->偏好设置->XML文件->编辑器

行宽处输入较大的数字,比如999,然后使用ctrl+shift+F格式化XML文件。

您会发现行已经对齐了。


这个答案已经发布了,为什么还要再次发布相同的答案呢? - Bruce

-2

您可以将默认的XML编辑器设置为“Java编辑器”:

  • 右键单击XML文件
  • 选择“打开方式”
  • 选择“其他...”
  • 选择“Java编辑器”

这将应用所有Java格式和控制到XML文件中。


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