XML中如何比较XML差异_XML比较XML差异的操作方法

xml怎么美化_xml如何美化

嘿,我记得上次我帮同事调试配置文件。
XML 看起来像是一种扭曲,一个标签嵌套在另一个标签内,而且注释看起来根本就没有写过。
这让我头晕目眩。
还好用的是VSCode,格式化后立刻就清楚了。

专业的编辑真的很棒。
如果您使用过多的 Ctrl+Shift+F 等热键,它们就会变成肌肉记忆。
然而,有一次,在一家咖啡店,我的手机没电了,我用纸和笔在打印的 XML 上绘制标签级别。
它实际上比在计算机上使用它更快。
这真的很有趣。

在线工具适合临时使用,但要小心。
我曾经使用一个网站转换格式,发现页脚有广告,这让我震惊。
命令行还是可靠的。
例如,在Ubuntu上使用xmllint时,终端一片漆黑,一行一行地运行非常令人兴奋。
我通常在 PATH 中为常用的格式化脚本添加别名,例如 alias xmlformat='xmllint --format',这是通过键入几个字母来完成的。
Python 的 xml.dom.minidom 也很有趣。
我曾经想向 XML 添加版本控制,因此我将 doc.writexml(sys.stdout, addindent=" ", newl="") 行添加到脚本中,并在 Git 提交日志中显示缩进的文本。
同事看代码都惊呆了,哈哈。

就插件而言,SublimeText 的 XML Tools 插件是一个令人难以置信的工具。
您可以直接从上下文菜单中“格式化 XML”,甚至无需输入路径。
然而,Sublime 本身并不是免费的。
要安装插件,您必须购买专业版,这有点棘手。

在高级技术中,我最喜欢的是注释。
我曾经重建了一个旧的 XML 配置,并在每个旧标签旁边添加了 <!-
old: use new: --> 注释。
后来发现比直接删掉要好很多,而且也给新人提了个醒。

CDATA 的使用不多,但它曾多次发挥作用。
以前,在处理带有HTML片段的XML时,如果不添加CDATA,所有像<<这样的字符都会变成实体,看起来很不舒服。

为了团队协作,我们项目有一个约定,XML文件末尾应该有换行符,甚至属性值的引号也要统一。
曾经有人提交了仅由波浪线组成的差异,导致评估长期受阻。
后来强行使用pre-commit hook检查,问题就没有再出现了。

等等,还有一件事。
有时很难修饰太多。
例如,如果简单的三行 XML 采用彩色格式,您将不会习惯。
这之间有平衡吗?