Как обернуть код и вывод в методе уценки (.Rmd)

В моих документах в частях r я использую длинные коды, например:

```{r}
output <- "very long query for example url to some website............................................."
output
```

Есть ли способ не сделать R автоматически обернуть код, скажем, после 60 символов? Я попробовал вариант tidy=TRUE, tidy.opts=list(width.cutoff=60), но он не работает.

И я хочу то же самое с выходом, потому что вывод моего запроса - это какой-то текст. Я хочу отображать весь контент во многих строках, а не только в одной строке. Как я могу это сделать?

Ответ 1

Все изменилось с 2015 года, но FWIW, учитывая, что вы используете rmarkdown_1.8 и knitr_1.20:

  • он правильно обрабатывается в выводе html по умолчанию;
  • Если вы ищете выход pdf, то вы можете сделать

    • разрыв строки для управления длиной блока кода (если вы хотите покажите его), но обратите внимание, что в символьной строке будет добавлен \n (в этом случае вы можете использовать два разных фрагмента кода: один для отображения кода другого для выходов);
    • относительно вывода, вы можете установить опцию results для кода кода 'asis', чтобы выход обрабатывался так, как если бы это был обычный фрагмент текста, и в этом случае вы также можете использовать paste() или paste0() использовать теги латекса для настройки отображения текста.

Итак:

1- отобразить код

{r, eval = F}
output <- "Lorem ipsum dolor sit amet, consectetur adipisicing elit, 
    sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
output

2- получить выход

{r, results = 'asis', echo = F}
output <- "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. "
output

Надеюсь, это поможет.