有没有办法将 HTML 从 .fsx 文件直接发送到 FsLab 日志中?
Is there a way to emit HTML directly into an FsLab journal from the .fsx file?
我想将一些 html(从我的 F# 代码生成)发送到 FsLab 日志中,但似乎无法找到实现它的正确咒语。
如果我的代码中有一个函数 returns 一个 html 片段,有没有办法直接将其放入页面而不被 <pre>
标记包围?
我试过,例如:
let f () =
"""Some <b>bold</b> sample"""
let htmlContent = f ()
然后
(*** include-value:htmlContent ***)
但输出只是 html 代码本身,其格式类似于输出。
我深入研究了 F# 格式化 GH 页面并找到了 (*** raw ***)
命令,所以我也尝试了:
(*** include-value:htmlContent, raw ***)
但输出仍然被 <pre>
& <code>
标签包围。
是否可以在没有 <pre>
标签的情况下以这种方式简单地发出原始 html?
如果您使用的是最新版本,则可以使用 fsi.AddHtmlPrinter
添加自定义 HTML 打印机。我们需要改进 FsLab 文档,但这也被 F# Interactive Service in Atom.
使用
要发出原始 HTML,您可以在脚本中包含如下内容:
(*** hide ***)
type Html = Html of string
#if HAS_FSI_ADDHTMLPRINTER
fsi.AddHtmlPrinter(fun (Html h) ->
seq [], h)
#endif
然后,您应该能够创建 HTML 个节点:
let b = Html("""Some <b>bold</b> sample""")
(*** include-value:b ***)
我想将一些 html(从我的 F# 代码生成)发送到 FsLab 日志中,但似乎无法找到实现它的正确咒语。
如果我的代码中有一个函数 returns 一个 html 片段,有没有办法直接将其放入页面而不被 <pre>
标记包围?
我试过,例如:
let f () =
"""Some <b>bold</b> sample"""
let htmlContent = f ()
然后
(*** include-value:htmlContent ***)
但输出只是 html 代码本身,其格式类似于输出。
我深入研究了 F# 格式化 GH 页面并找到了 (*** raw ***)
命令,所以我也尝试了:
(*** include-value:htmlContent, raw ***)
但输出仍然被 <pre>
& <code>
标签包围。
是否可以在没有 <pre>
标签的情况下以这种方式简单地发出原始 html?
如果您使用的是最新版本,则可以使用 fsi.AddHtmlPrinter
添加自定义 HTML 打印机。我们需要改进 FsLab 文档,但这也被 F# Interactive Service in Atom.
要发出原始 HTML,您可以在脚本中包含如下内容:
(*** hide ***)
type Html = Html of string
#if HAS_FSI_ADDHTMLPRINTER
fsi.AddHtmlPrinter(fun (Html h) ->
seq [], h)
#endif
然后,您应该能够创建 HTML 个节点:
let b = Html("""Some <b>bold</b> sample""")
(*** include-value:b ***)