blob: 19487955619cf3bc042e6e22831d4ca77cb1e5d5 [file] [log] [blame]
Hao Zhuc5415632017-02-21 17:16:13 -05001# These functions are imported from knitr/highr as `:::` is not recommended by
2# CRAN
3
Hao Zhuf7994dd2017-02-27 16:58:42 -05004# escape special LaTeX characters
5# @author Yihui Xie
Hao Zhuc5415632017-02-21 17:16:13 -05006escape_latex <- function(x, newlines = FALSE, spaces = FALSE) {
7 x = gsub('\\\\', '\\\\textbackslash', x)
8 x = gsub('([#$%&_{}])', '\\\\\\1', x)
9 x = gsub('\\\\textbackslash', '\\\\textbackslash{}', x)
10 x = gsub('~', '\\\\textasciitilde{}', x)
11 x = gsub('\\^', '\\\\textasciicircum{}', x)
12 if (newlines) x = gsub('(?<!\n)\n(?!\n)', '\\\\\\\\', x, perl = TRUE)
13 if (spaces) x = gsub(' ', '\\\\ \\\\ ', x)
14 x
15}
16
Hao Zhuf7994dd2017-02-27 16:58:42 -050017# escape special HTML characters
18# @author Yihui Xie
Hao Zhuc5415632017-02-21 17:16:13 -050019escape_html <- function(x) {
20 x = gsub('&', '&amp;', x)
21 x = gsub('<', '&lt;', x)
22 x = gsub('>', '&gt;', x)
23 x = gsub('"', '&quot;', x)
24 x
25}