【问题标题】:How to edit xml/dom with Emacs Lisp如何使用 Emacs Lisp 编辑 xml/dom
【发布时间】:2012-09-08 22:11:52
【问题描述】:

如果可能的话,我如何在 Emacs Lisp 中以编程方式编辑 xml 数据?

我需要做的是以编程方式将新节点添加到 xml 中的任意位置:

<root>
  <child>
  </child>
</root>

(xml-add-element xml "hello" (xml-element-by-tagname xml "child"))

<root>
  <child>
    <hello></hello>
  </child>
</root>

编辑:我已经将 xml 解析为 lisp 结构并使用 xml.eldom.el 对其进行编辑,但现在我需要将 lisp 结构 转回xml 数据.

【问题讨论】:

  • 有趣的是我今天遇到了完全相同的问题。来自这个问题的 Trey Jackson 的代码stackoverflow.com/questions/797442/… 让我非常接近。但这不是我需要的 100%,因为如果 sexp 包含任何空白节点,Trey 的解决方案会吃掉空白。我非常接近我自己的 xmlgen 实现,它应该完全按照 xml-parse-* 函数解析之前的方式输出 xml。我会在完成后立即发布答案。

标签: xml emacs elisp


【解决方案1】:

这是我的版本,用于将 xml-parse* 函数创建的 s 表达式转换回 xml 字符串。希望对您有所帮助!

https://github.com/upgradingdave/xml-to-string

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-18
    • 2021-11-22
    • 1970-01-01
    • 2019-07-25
    • 2011-05-27
    相关资源
    最近更新 更多