如何按字母顺序对Intellij IDEA 13中的XML文件中的代码进行排序?

时间:2014-04-08 19:19:58

标签: android intellij-idea formatting

我在android中使用eclipse进行训练,但现在使用Intellij IDEA 13.我习惯了eclipse的图形字符串编辑器,可以按字母顺序为我排序string.xml文件。 我想在intelliJ中做同样的事情,但无法找到任何解决方案。 这就是代码的样子

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">ActionBar App</string>
    <string name="hello_world">Hello world!</string>
    <string name="action_settings">Settings</string>
</resources>

我想按字母顺序对它进行排序

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="action_settings">Settings</string>
    <string name="app_name">ActionBar App</string>
    <string name="hello_world">Hello world!</string>
</resources>

怎么做?请帮忙!

4 个答案:

答案 0 :(得分:2)

排列功能允许您设置规则以排列它出现在文件中的顺序。通过IDEA-72907添加了属性的排列,特别是对于Android文件。您可以通过转到 设置&gt;获取Android的预定义排列方式。 [项目设置]&gt;代码风格&gt; XML {Arrangement Tab} 点击&#34; Set from ...&#34;右上角附近的链接,然后选择首选样式&gt;的Android 即可。这将使用您可以调整的预定义样式填充XML样式(和排列)设置。

那就是说,我不确定排列功能是否能够按属性值进行排序。我知道它可以按特定顺序对属性进行排序。如果我有机会,我会看看是否可以找到按属性值排序的语法。在此期间,你可以看看。

此外,您可以尝试使用Lines SorterSortSelection第三方插件。有点基础,但有一个可能适合你。

答案 1 :(得分:1)

我找到了这个链接Rearrange Attributes in Android XML Files with IntelliJ IDEA 13

how to arrange xml

我选择了第二个选项。

如上所述,请转到设置/编辑器/代码样式/ XML /排列

重新安排排列并更改为按名称重新排序:

reorder by name

这不会按名称对strings.xml进行排序,所以

复制并粘贴到Excel工作表中并按A-Z

排序

xcel reorder

答案 2 :(得分:0)

我发布了这两年后的事实,但是我还想在这里对IntelliJ IDEA中的行进行排序 - 即使用IDE的Vim功能。

如果您想按字母顺序排列一系列行 - 比如第3行到第6行 - 只需执行以下操作:

  1. 打开“工具”菜单,确保选中“Vim Emulator”。
  2. 在编辑器中输入以下命令:

    :3,6sort

  3. 就是这样 - 你的线条现在将被分类。您现在需要做的就是在不使用Vim的情况下禁用它。您可以通过打开“工具”菜单并取消选中“Vim Emulator”来执行此操作。

  4. 请注意,这不是XML排序 - 它是字母行排序,因此空格等可能妨碍成功排序。但对于像上面提到的那样的简单案例,这应该有用。

    的Darryl

答案 3 :(得分:0)

不能按属性值对 XML 元素进行排序,例如'name' 通过 File → Settings → Editor → CodeStyle → XML → Arrangement。您只能对标签内的属性顺序进行排序,也可以按标签名称对元素进行排序。

  • Android 有一个名为 AndroidXMLSorter 的插件(只能按属性“名称”排序,仅在 Android 项目中)
  • 如果条目写在一行中,您可以选择文本并使用:Edit → Sort Lines(无需插件)