using kableExtra in rticles ctex template

问题

kableExtra包是knitr::kable的一个非常好的扩展。不过用rticles的ctex模板调用了kableExtra::kable_styling 再生成pdf时发现出现下面这样的错误:

kableExtra LaTeX Error: Unknown float option `H'.

解决方法

在rmd文件的同一目录下创建header.tex文件,输入以下内容:

\usepackage{booktabs}
\usepackage{longtable}
\usepackage{array}
\usepackage{multirow}
\usepackage[table]{xcolor}
\usepackage{wrapfig}
\usepackage{float}
\usepackage{colortbl}
\usepackage{pdflscape}
\usepackage{tabu}
\usepackage{threeparttable}
\usepackage[normalem]{ulem}

在rmd文档的front matter处引用header.tex

---
title: "Test kableExtra"
author: "Alpha Dog"
date: "`r Sys.Date()`"
documentclass: ctexart
output:
  rticles::ctex:
    fig_caption: yes
    number_sections: yes
    toc: yes
    toc_depth: 3
    #df_print: kable
    highlight: tango
    includes:
      in_header: header.tex
  keep_md: yes
classoption: "hyperref,"
---

如果你已经安装了tinytex包,她将会自动为你安装header.tex中的tex包。如果你还不知道tinytex,那你就要好好了解一下这个伟大发明了[传送门]。

参考资料