Nothing
sanitize <- function(str, type = "latex") {
if(type == "latex"){
result <- str
result <- gsub("\\\\", "SANITIZE.BACKSLASH", result)
result <- gsub("$", "\\$", result, fixed = TRUE)
result <- gsub(">", "$>$", result, fixed = TRUE)
result <- gsub("<", "$<$", result, fixed = TRUE)
result <- gsub("|", "$|$", result, fixed = TRUE)
result <- gsub("{", "\\{", result, fixed = TRUE)
result <- gsub("}", "\\}", result, fixed = TRUE)
result <- gsub("%", "\\%", result, fixed = TRUE)
result <- gsub("&", "\\&", result, fixed = TRUE)
result <- gsub("_", "\\_", result, fixed = TRUE)
result <- gsub("#", "\\#", result, fixed = TRUE)
result <- gsub("^", "\\verb|^|", result, fixed = TRUE)
result <- gsub("~", "\\~{}", result, fixed = TRUE)
result <- gsub("SANITIZE.BACKSLASH", "$\\backslash$", result, fixed = TRUE)
return(result)
} else {
result <- str
result <- gsub("&", "&", result, fixed = TRUE)
result <- gsub(">", ">", result, fixed = TRUE)
result <- gsub("<", "<", result, fixed = TRUE)
return(result)
}
}
sanitize.numbers <- function(str, type,
math.style.negative = FALSE,
math.style.exponents = FALSE){
if (type == "latex"){
result <- str
if ( math.style.negative ) {
for(i in 1:length(str)) {
result[i] <- gsub("-", "$-$", result[i], fixed = TRUE)
}
}
if ( math.style.exponents ) {
if (is.logical(math.style.exponents) && ! math.style.exponents ) {
} else if (is.logical(math.style.exponents) && math.style.exponents ||
math.style.exponents == "$$"
) {
for(i in 1:length(str)) {
result[i] <-
gsub("^\\$?(-?)\\$?([0-9.]+)[eE]\\$?(-?)\\+?\\$?0*(\\d+)$",
"$\\1\\2 \\\\times 10^{\\3\\4}$", result[i])
}
} else if (math.style.exponents == "ensuremath") {
for(i in 1:length(str)) {
result[i] <-
gsub("^\\$?(-?)\\$?([0-9.]+)[eE]\\$?(-?)\\+?\\$?0*(\\d+)$",
"\\\\ensuremath{\\1\\2 \\\\times 10^{\\3\\4}}",
result[i])
}
} else if (math.style.exponents == "UTF8" ||
math.style.exponents == "UTF-8") {
for(i in 1:length(str)) {
## this code turns 1e5 into a UTF-8 representation of 1\times10^5
if (all(grepl("^\\$?(-?)\\$?([0-9.]+)[eE]\\$?(-?)\\+?\\$?0*(\\d+)$",
result[i]))) {
temp <- strsplit(result[i],"eE",result[i])
result[i] <-
paste0(temp[1],
"\u00d710",
chartr("-1234567890",
"\u207b\u00b9\u00b2\u00b3\u2074\u2075\u20746\u20747\u20748\u20749\u2070",
temp[2]))
}
}
}
}
return(result)
} else {
return(str)
}
}
sanitize.final <- function(str, type){
if (type == "latex"){
return(str)
} else {
str$text <- gsub(" *", " ", str$text, fixed = TRUE)
str$text <- gsub(' align="left"', "", str$text,
fixed = TRUE)
return(str)
}
}
### Some trivial helper functions
### Suggested by Stefan Edwards, sme@iysik.com
### Helper function for disabling sanitizing
as.is <- function(str) {str}
### Helper function for embedding names in a math environment
as.math <- function(str, ...) { paste0('$',str,'$', ...) }
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.