Impressão de caracteres UTF-8 em R, Rmd, knitr, bookdown

ATUALIZAÇÃO (abril de 2018):
O problema ainda persiste, sob diferentes configurações e computadores. Acredito que esteja relacionado a todos os caracteres UNICODE, UTF-8.

https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/

PROBLEMA:

Meu arquivo Rmd / R é salvo com a codificação UTF-8. De outrossessionInfo() detalhes:

Platform: x86_64-w64-mingw32/x64 (64-bit)
LC_CTYPE=English_Canada.1252

other attached packages:
[1] knitr_1.17

Aqui está um quadro de dados simples que preciso imprimir como uma tabela em um documento html, por exemplo comkable(dt) ou de qualquer outra maneira.

dt <- data.frame(
name=c("Борис Немцов","Martin Luter King"),
year=c("2015","1968") 
)

Nenhum dos seguintes trabalhos:

Caminho 1

Se eu mantiver Sys.setlocale () como está (ou seja,"English_Canada.1252"), então recebo o seguinte:

> dt;                                                                                           
name year
1 <U+0411><U+043E><U+0440><U+0438><U+0441> <U+041D><U+0435><U+043C><U+0446><U+043E><U+0432> 2015
2 Martin Luter King 1968
> kable(dt)
|name                                                                                      |year |
|:-----------------------------------------------------------------------------------------|:----|
|<U+0411><U+043E><U+0440><U+0438><U+0441> <U+041D><U+0435><U+043C><U+0446><U+043E><U+0432> |2015 |
|Martin Luter King                                                                         |1968 |

Observe que<U+....> são impressos em vez de caracteres.
Usandodt$name <- enc2utf8(as.character(dt$name)) não ajudou.

Caminho 2

Se eu mudarSys.setlocale("LC_CTYPE", "russian") # "Russian_Russia.1251" `, entendi o seguinte:

> dt; 
name year
1      Áîðèñ Íåìöîâ 2015
2 Martin Luter King 1968

> kable(dt)
|name              |year |
|:-----------------|:----|
|Áîðèñ Íåìöîâ      |2015 |
|Martin Luter King |1968 |

Observe que os caracteres se tornaram sem sentido.
Usandoprint(dt,encoding="windows-1251"); print(dt,encoding="UTF-8") não teve efeito.

Algum conselho?

O mais próximo que pude encontrar para solucionar esse problema está nos links a seguir, mas eles não ajudaram:http://blog.rolffredheim.com/2013/01/r-and-foreign-characters.html, https://tomizonor.wordpress.com/2013/04/17/file-utf8-windows, https://www.smashingmagazine.com/2012/06/all-about-unicode-utf8-character-sets

Também tentei salvar meu arquivo com a codificação 1251 (em vez da atual UTF-8) e alguns outros pacotes de conversão / processamento de caracteres. Nada ajudou ainda.

ATUALIZAR:

Pergunta relacionada aberta:Como alterar o Sys.setlocale, quando você recebe o erro "solicitação para definir a localidade ... não pode ser respeitada"

questionAnswers(1)

yourAnswerToTheQuestion