gpt4 book ai didi

r - 如何使用 R 将字符从 Markdown 转换为 LaTeX

转载 作者:行者123 更新时间:2023-12-05 00:57:57 25 4
gpt4 key购买 nike

我有一个变量x,它是一个使用markdown格式化的字符:

x <- "Here is some _great_ text in a **variable** and some blank spaces ____."

我想把它转换成 Tex,让它看起来像这样

y <- some_library::md2tex(x)
y
[1] "Here is some \textit{great} text in a \textbf{variable} and some blank spaces \_\_\_\_."

是否有实现此目的的 R 函数?反斜杠本身可能需要转义,但你明白了。我确定这是存在的,因为将 .Rmd 转换为 .pdf 很容易,但我不希望创建和编写中间 .tex 文件,因为这需要重复很多次。

我已经研究了 knitrRMarkdown 的小插曲、文档和源代码,但找不到我要找的东西。

编辑

所以我发现 knitr::pandoc 几乎就在那里,但需要输入和输出文件。

最佳答案

只需将您的字符串写入临时文件,然后进行转换。我建议使用 rmarkdown::render 而不是 knitr::pandoc;它们都调用 pandoc,但前者为您设置了所有选项:

x <- "Here is some _great_ text in a **variable** and some blank spaces ____."
infile <- tempfile(fileext=".md")
writeLines(x, infile)
outfile <- rmarkdown::render(infile, rmarkdown::latex_fragment(), quiet = TRUE)
readLines(outfile)

这会产生以下输出:

[1] "Here is some \\emph{great} text in a \\textbf{variable} and some blank"
[2] "spaces \\_\\_\\_\\_."

为了整洁,您可以删除最后的两个临时文件:

unlink(c(infile, outfile))

关于r - 如何使用 R 将字符从 Markdown 转换为 LaTeX,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59123976/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com