【问题标题】:Rendering HTML code from EmacsLisp representation从 EmacsLisp 表示中渲染 HTML 代码
【发布时间】:2021-10-28 16:44:37
【问题描述】:

我可以使用libxml-parse-html-region 函数解析html。

但我不知道如何将其渲染回 HTML。 shr.el 函数似乎根本没有做任何事情。

我尝试的是这个。 我写了一个 HTML 字符串

<html>
  <head></head>
  <body></body>
</html>

并使用libxml-parse-html-region 函数对其进行解析,并使用dom-pp 函数进行漂亮的打印。像这样

(dom-pp (libxml-parse-html-region (region-beginning) (region-end))))

这导致以下 lisp 表示

(html nil
 (head nil)
 (body nil))

被插入缓冲区。这没关系。 下一步不起作用。 我想渲染这个嘴唇表示 回到 HTML 表示。 我尝试将(shr-render-region)(region-begining)(region-end) 函数调用一起用作参数,就像这样

(shr-render-region (region-beginning) (region-end))

我标记一个区域并交互调用上述代码。 但是,据我所知,这并没有做任何事情。缓冲区中没有插入任何内容,shr-render-region 不返回字符串。

那么我如何将 lisp 表示返回到 HTML 代码中呢?

更新 1: shr-render-region 将 HTML 代码呈现为格式化文本,因此无法正常工作。

更新 2: shr.el 函数不起作用,看起来它们用于在 emacs 缓冲区中呈现 HTML,但不呈现代码(html 字符串)。

【问题讨论】:

    标签: html emacs rendering


    【解决方案1】:

    dom-print 函数可用于将 lisp 表示形式打印回 HTML 文本。

    【讨论】:

    • 或者shr-dom-to-xml返回一个字符串。
    猜你喜欢
    • 1970-01-01
    • 2016-12-16
    • 2017-04-16
    • 1970-01-01
    • 1970-01-01
    • 2015-02-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多