Как обрабатывать кодировки в knitr spin_child - PullRequest
1 голос
/ 28 марта 2019

Следуя рекомендациям по https://yihui.name/en/2018/11/biggest-regret-knitr, Я начал сохранять свои файлы .R с кодировкой UTF-8 (используя RStudios "Сохранить с кодировкой").Кажется, работает хорошо, пока не доходит до использования spin_child.

Например, под Windows у меня есть файл mainfile.R с этим кодом:

print("Bär 1"); spin_child("subfile.R") 

subfile.R имеет такой код:

print("Bär 2")

В RStudio под Windows я запускаю

rmarkdown::render("mainfile.R", encoding = "UTF-8")

Если оба файла сохранены с кодировкой UTF-8, Bär 1 получается хорошо, но Bär 2 выходит как "BÃ2r 2 "(что мне кажется проблемой кодирования).Интересно, что если я изменю кодировку subfile.R на ISO-8859-1 (по умолчанию в системе), оба Bär получатся правильно.Мне кажется странным, что мне нужно использовать разные кодировки для разных файлов, поэтому мне интересно, что мне делать, если входной файл для spin_child также является UTF-8?

1 Ответ

0 голосов
/ 28 марта 2019

Это ошибка в knitr , и я просто исправил ее на Github .Пожалуйста, попробуйте версию для разработчиков и продолжайте использовать UTF-8:

remotes::install_github('yihui/knitr')
...