Я работаю над вине R-пакетами, и есть ряд случаев, когда я хотел бы включить вывод ошибки в документ в качестве примера для пользователей.Как включить вывод R stderr в документе Sweave
Так Sweave код кусок
<<throws_error>>=
stop('hello')
@
бы идеально подготовить документ с
stop('hello')
Error: hello
Моим реальным примером является довольно долго работает процесс, и я хотел бы захватить вывод предупреждений и сообщений, а также ошибок.
Я испортил различные варианты кода Sweave, включая параметры. Единственное решение, с которым я столкнулся, - это иметь скрытый фрагмент кода, который печатает текст ошибки с cat()
- вот что поражает цель использования Sweave. Похоже, может быть возможно решение с функцией sink()
, чтобы как-то перенаправить stderr, но также не смогли понять это. Какие-либо предложения?
Как насчет дословной среды латекса? –
Duplicate: http://stackoverflow.com/q/3131270/946850 – krlmlr
добавил пояснение к моему вопросу о том, что это длительный процесс (поэтому я бы предпочел не запускать его дважды, как это предлагает основной ответ), и я бы тоже как захватить предупредительный вывод, который я не думаю, что «cat()» захватит. – skyebend