#r #r-markdown
#r #r-markdown
Вопрос:
Я создал небольшую функцию, которая, учитывая таблицу в качестве аргумента, выводит некоторый HTML, который позволяет отображать различные представления этой таблицы с интерфейсом с вкладками.
Проблема в том, что это хорошо работает при рендеринге HTML-документа, но ломается, если я хочу сгенерировать PDF. Решением было бы сделать функцию осведомленной о текущем формате вывода rmarkdown, чтобы она выводила правильный код. Что-то вроде этого :
function() {
if (current_output_format=="html") output_something_in_html()
if (current_output_format=="pdf") output_something_in_latex()
}
Итак, есть ли способ определить при вызове render()
, какой формат вывода отображается в данный момент?
Заранее спасибо за любую помощь.
Комментарии:
1. Хакерским решением является использование
Makefile
. При компиляции создайте временную копию файла для2. @csgillespie Да, именно так я сейчас с этим справляюсь, но это не очень «переносимо». Спасибо!
Ответ №1:
Как насчет обнаружения ошибки и разумного решения этой проблемы. Итак, что-то вроде:
ans = try(do_default(), TRUE)
if(class(ans)== "try-error")
ans = do_fall_back()
Все еще не лучшее решение, но, по крайней мере, оно переносимо.
Комментарии:
1. Это может быть способ, но мой код не вызывает никаких ошибок. Я просто хочу вывести что-то другое (HTML или LaTeX) в зависимости от отображаемого формата.
2. Тогда у меня нет никаких предложений: (