html模板和css主题/突出显示的完全本地自定义

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

我目前正在探索R Markdown配置和HTML输出的可能性。我的目标是拥有一个本地html模板以及一个本地css主题文件,其行为与我在yaml配置中选择主题/突出显示选项完全相同。

我使用了以下配置:

output:
  html_document:
    theme: united
    highlight: tango
    toc: true
    toc_depth: 3
    toc_float: # set to false if you do no want a floating toc
    collapsed: true
    smooth_scroll: true

我现在希望能够自己定制HTML结构和CSS。我从HTML模板开始如下:

下载标准的pandoc HTML5 template并将其复制到本地template.html文件中。我将配置更改为

output:
  html_document:
    template: template.html
    theme: united
    highlight: tango
    toc: true
    toc_depth: 3
    toc_float: # set to false if you do no want a floating toc
    collapsed: true
    smooth_scroll: true

有几个问题:

  • TOC不再显示
  • 输出的渲染HTML设计发生了变化,即我没有任何边距 - 所有的javascript功能都消失了,因此没有DT支持,没有标签,没有滚动等。

我的问题是:我如何能够获得与之前配置完全相同的设计和功能,但是将模板/主题/高亮文件存储在本地? (所以一个template.html和一个styles.css以及所有需要的JS文件)

如果我需要提供进一步的细节,请告诉我。谢谢!

templates r-markdown knitr pandoc
1个回答
1
投票

您链接到的Pandoc默认值不是rmarkdown中使用的默认值。那个存储在system.file("rmd/h/default.html", pkg = "rmarkdown")中,当前版本在这里:https://github.com/rstudio/rmarkdown/blob/master/inst/rmd/h/default.html

如果您决定修改默认模板,还应该研究rmarkdown::html_document的源代码。如果template != "default",你还必须做一些其他的改变。

© www.soinside.com 2019 - 2024. All rights reserved.