如何让 bookdown 在 kableExtra table headers 中正确渲染 LaTeX?

How to let bookdown render LaTeX in kableExtra table headers properly?

我在 rmarkdown (bookdown) 中使用 kableExtra 包在 pdf 输出中生成漂亮的表格。除了在 headers 中呈现 LaTeX 代码外,一切都很好。像 $\alpha$ 这样命名的 header 不会呈现为希腊字母。结果只是pdf文档中显示的 $\alpha$

附加信息:我使用 format = "latex"escape = TRUE。如果我使用 escape = FALSE,在渲染文档时会出现错误:

I was unable to find any missing LaTeX packages from the error log _main.log.
! Misplaced \noalign.
\cmidrule ->\noalign 
                     {\ifnum 0=`}\fi \@ifnextchar [{\@cmidrule }{\@cmidrule ...
l.1293 \cmidrule
                {3-7} 

很抱歉没有给出一个可重现的例子。我不知何故希望这是我在 kableExtra 某处遗漏的设置。如果需要的话我会举个例子。

非常感谢!

你可以试试这个:

---
title: "Use slashes to escape"
author: "bttomio"
date: "3/24/2021"
output: pdf_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

```{r echo=F}
library(kableExtra)
x <- matrix(1:4, ncol=2)
kbl(x, col.names=c('$\alpha$', 'B'), align = 'c', 'latex', booktabs = T, escape = F) %>%
    add_header_above(c("$\\alpha$" = 2), escape = F)
```

-输出