Я пытаюсь создать несколько шаблонов фрагментов для документов knitr::spin
в R Studio, и мне нужно, чтобы они включали буквальные обратные кавычки, чтобы полученный документ содержал фрагмент R:
Пример желаемого результата:
#' ---
#' author: 'ENTER'
#' title: 'ENTER'
#' date: '`r Sys.time()`'
#' output:
#' html_document
#' ---
Однако я не могу понять, как выводить обратные кавычки. Этот:
`r paste("#' date: '`Sys.time()`')`
Не будет работать, так как галочки прерывают команду вставки при рендеринге из фрагмента R Studio в код R. Я пытался хешировать отметки, добавляя прямые и обратные косые черты и т. Д., Но не нашел решения, которое правильно отображает эту строку:
#' date: '`r Sys.time()`'
Windows 7 Enterprise, 64-разрядная операционная система
Версия R: 3.2.5
Версия R Studio: 0.99.903
knitr Версия: 1.14
Пример: я пробовал это, но он по-прежнему переводит код R, а не просто печатает текст:
snippet spin.header
`r paste("#' ---")`
`r paste("#' author: 'ENTER'")`
`r paste("#' title: 'ENTER'")`
`r paste("#' date: '<code>``` `r Sys.time()` ```</code>'")`
`r paste("#' output:")`
`r paste("#' html_document")`
`r paste("#' ---")`
2 ответа
Правильный ответ был опубликован rawr
в комментариях (он пропустил только r и галочку):
snippet spin.header
`r paste("#' ---")`
`r paste("#' author: 'ENTER'")`
`r paste("#' title: 'ENTER'")`
`r paste("#\' date: '\x60r Sys.time()\x60'")`
`r paste("#' output:")`
`r paste("#' html_document")`
`r paste("#' ---")`
Один из вариантов - сломать токен, используемый во время обработки фрагмента для встроенного R.
snippet sh
#' ---
#' author: '${1:AUTHOR}'
#' title: '${2:TITLE}'
#' date: '`${3:}r Sys.time()`'
#' output:
#' html_document
#' ---
${0}
Другой вариант - полностью отказаться от встроенного синтаксического анализа R.
snippet sh
`r paste0(readLines("~/.R/snippets/spinheader.txt"),collapse = '\n')`
spinheader.txt
#' ---
#' author: '${1:AUTHOR}'
#' title: '${2:TITLE}'
#' date: '`r Sys.time()`'
#' output:
#' html_document
#' ---
${0}
Похожие вопросы
Связанные вопросы
Новые вопросы
r
R — это бесплатный язык программирования с открытым исходным кодом и программная среда для статистических вычислений, биоинформатики, визуализации и общих вычислений. Пожалуйста, используйте минимально воспроизводимые примеры, которые другие могут запустить с помощью копирования и вставки. Показать желаемый результат полностью. Используйте dput() для данных и укажите все небазовые пакеты с помощью library(). Не вставляйте изображения для данных или кода, вместо этого используйте блоки кода с отступом. Для вопросов по статистике используйте https://stats.stackexchange.com.