如何告诉 xmllint 忽略“实体”错误

问题描述 投票:0回答:1

我使用

xmllint
作为 ALE 中 linter 设置的一部分(
Asynchronous Lint Engine
Vim
的插件)。我正在处理的代码库有很多 XML 格式的 HTML 实体。我知道这不好,但他们目前并没有伤害任何人。所以我希望 xmllint 不要在每次打开或保存文件时提醒我。

这就是 xmllint 所说的:

page.xml:54: parser error : Entity 'nbsp' not defined
    <Element label="&nbsp;" value="{__t.Delete}" action="{#delete}"/>
                          ^

有什么方法可以告诉 xmllint (直接或通过 ALE)不要给我实体错误吗?

xml vim xmllint
1个回答
0
投票

作为解决方法,可以添加

--recover
选项。如果没有出现其他错误,则将解析该文档,但丢失的实体将被删除。

给定

<root>
  <Data>
    <colA>def&nbsp;</colA>
  </Data>
</root>

结果来自

xmllint --recover tmp2.xml

tmp2.xml:5: parser error : Entity 'nbsp' not defined
    <colA>def&nbsp;</colA>
                   ^
<?xml version="1.0"?>
<root>
  <Data>
    <colA>def</colA>
  </Data>
</root>
© www.soinside.com 2019 - 2024. All rights reserved.