使用RStudio和knitr,我看到我可以在我的.rmd文件中添加带有以下代码的TOC。
----------------
output:
html_document:
toc: yes
-----------------
但是,这会将TOC置于HTML文档的最开头。有没有办法在页面上移动TOC?在介绍段落后说?
我尝试使用__TOC__
和__FORCETOC__
,但它没有改变TOC的位置。
答案 0 :(得分:10)
TOC的位置在R Markdown默认HTML模板中得到修复。如果要更改其在文档中的位置,则需要修改模板:
system.file("rmd/h/default.html", package="rmarkdown")
$toc
部分移至您希望显示目录的位置。 lowertitle.html
template: lowertitle.html
添加到html_document
设置。从模板的角度来看,文档的所有内容都是原子单元,因此可能需要将任何想要在TOC之前显示的内容放在模板本身中。
答案 1 :(得分:1)
您可以使用JQuery将TOC重定位到文件中的任意位置。只需在希望TOC的位置插入一个标题,然后使用通过渲染R Markdown文件生成的ID。例如:
<script>
// Move TOC to the Table of Contents heading (with id "table-of-contents")
$(function() {
$( "#TOC" ).insertAfter( $( "#table-of-contents" ) );
});
</script>
R Markdown文件中某处名为“目录”的标题将收到id“目录”。 TOC的ID为“ TOC”。上面的Jquery位选择了该目录,并将其插入“目录”标题之后,无论它位于文档中的何处。