如何在 {pkgdown} 站点内手动创建链接?

How can I manually create links within a {pkgdown} site?

pkgdown autolinking vignette 详细介绍了包如何在网站中创建 links,包括网站本身的其他页面和其他包的文档。我想知道是否有一种简单的方法可以复制它。例如。在构建站点时是否有一个函数可以 运行,比如 generate_pkgdown_link("my_function") 会创建这样一个 link。这将非常有用,例如用于创建描述包结构的 HTML 流程图等。

请注意,查看自动生成的 link 并生成看起来相同的内容相对简单。主要困难在于生成一个无论站点托管在哪里都可以工作的 link - 例如无论是在本地托管还是在 RStudio Connect 服务器上托管。

对于任何试图回答相同问题的人,有一个记录在案的解决方案,我在写这个问题时不知何故遗漏了 - 使用 downlit::downlit_html_no(),例如

node <- xml2::read_xml("<p><code>base::t()</code></p>")
node
#> {xml_document}
#> <p>
#> [1] <code>base::t()</code>

# node is modified in place
downlit::downlit_html_node(node)
node
#> {xml_document}
#> <p>
#> [1] <code>\n  <a href="https://rdrr.io/r/base/t.html">base::t()</a>\n</code>

reprex package (v2.0.0)

于 2021-04-09 创建