R/markdown:渲染 html 内的标签 table

R/markdown: rendering html tags inside table

我想使用 markdown 在 [R] 中创建某种 html-tag 备忘单。我认为这是个好主意,因为我可以轻松显示标签和结果。事实证明这不是那么容易。让我们重构一下这句话:我认为这应该很容易,但在打印结果时我仍然卡住了。我真的很感激一些提示:)

我现在在做什么:


    ---
    title: "HTML Cheatsheet"
    output: html_document
    ---
    
    ```{r, results="asis"}
    
    # init
    "%>%" <- magrittr::"%>%"
    
    # create table
    tbl <- dplyr::tibble(
        "TAG"="<h1></h1>",
        "EXAMPLE"="<h1>Headline</h1>",
        "RESULT"=cat("<h1>Headline</h1>"))
    
    # print table
    tbl %>%
        knitr::kable() %>%
        kableExtra::kable_styling()
    
    ```

我的方法不起作用。我认为这是因为直接打印 cat("<h1>Headline</h1>") 并破坏了标题。可能有一个超级简单的问题解决方案。不幸的是,我缺少正确的词来搜索我的问题的答案(我得到的唯一结果是 'how to print html tables in markdown')

感谢您的专业知识:)

解决方案:

正如 nate 所提到的,我必须使用 knitr::kable(escape=FALSE) 来呈现 html 标签。要在 EXAMPLE 列中以非呈现形式保留标签,我唯一要做的就是手动转义它们。


    ---
    title: "HTML Cheatsheet"
    output: html_document
    ---
    
    ```{r, results="asis"}
    
    # init
    "%>%" <- magrittr::"%>%"
    
    # create table
    tbl <- dplyr::tibble(
        "TAG"="<h1></h1>",
        "EXAMPLE"="\<h1\>Headline\</h1\>",
        "RESULT"=cat("<h1>Headline</h1>"))
    
    # print table
    tbl %>%
        knitr::kable(escape=FALSE) %>%
        kableExtra::kable_styling()
    
    ```