Написание греческого текста в Rmarkdown - PullRequest
0 голосов
/ 21 ноября 2018

Привет, ребята. Я так стараюсь создать греческий документ с помощью Rmarkdown, потому что я не хочу изучать все команды Latex, и на самом деле очень просто сделать документ, похожий на документ Latex, с помощью Rmarkdown.На самом деле моя единственная проблема - это язык.У меня так много ошибок, и я до сих пор справлялся с ними.Ниже я приведу простой пример того, что производит Rstudio.Проблема в том, что он не печатает греческие буквы, но ошибки не произошло.Я действительно не знаю, что происходит.

---
title: "Title"
author: "Me"
fontsize: 12pt
header-includes:
   - \usepackage{fontspec}  
   - \usepackage[english,greek]{babel}
   - \newcommand{\en}{\selectlanguage{english}}
   - \newcommand{\gr}{\selectlanguage{greek}}

output:
   pdf_document:
      latex_engine: xelatex
---


{\gr{Αυτά είναι ελληνικά}}    

Я использую tinytex в Rstudio с информацией о сеансе:

R version 3.5.0 (2018-04-23)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service 
Pack 1

Matrix products: default

locale:
[1] LC_COLLATE=Greek_Greece.1253  
LC_CTYPE=Greek_Greece.1253    
LC_MONETARY=Greek_Greece.1253
[4] LC_NUMERIC=C                  
LC_TIME=Greek_Greece.1253    

attached base packages:
[1] stats     graphics  grDevices utils     
datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_3.5.0  backports_1.1.2 magrittr_1.5    
rprojroot_1.3-2 htmltools_0.3.6
[6] tools_3.5.0     yaml_2.2.0      Rcpp_0.12.18    
stringi_1.2.4   rmarkdown_1.10 
[11] knitr_1.20      stringr_1.3.1   digest_0.6.15   
evaluate_0.11 

Ответы [ 2 ]

0 голосов
/ 23 ноября 2018

Прежде всего, спасибо за ваш немедленный ответ, и ваши советы очень ценятся.Ну, я попытался обновить пакеты, которые вы сказали с помощью команды tlmgr_update () (из пакета tinytex), я скопировал ваш последний код и выдал ошибку ниже:

processing file: untitled.Rmd
output file: untitled.knit.md

! Package fontspec Error: The font "GFS Didot" cannot be 
found.

Error: Failed to compile untitled.tex. See untitled.log for 
more info.
Execution halted

Я даже сделал tlmgr_update ("GFS "), потому что я увидел, что шрифт, который вы использовали, был из этого пакета.

0 голосов
/ 22 ноября 2018

Очень важно использовать шрифт, который на самом деле содержит греческие глифы.Следующее работает для меня, когда входной документ сохраняется в UTF-8:

---
header-includes:
   - \usepackage[english,greek]{babel}
   - \newcommand{\en}[1]{{\selectlanguage{english}#1}}
   - \newcommand{\gr}[1]{{\selectlanguage{greek}#1}}
mainfont: GFS Didot
output:
   pdf_document:
      latex_engine: xelatex
---


\gr{Αυτά είναι ελληνικά}   \en{The gick brown fox jumps over the lazyy dog.}

Я удалил \usepackage{fontspec}, поскольку это делается автоматически, когда используется xelatex.Я также обновил ваши команды переключения языков для получения аргумента, поскольку pandoc не нравится стиль {\command text}.

Однако было бы более привычным комбинировать xelatex с polyglossia вместоbabel.Вот что pandoc делает при использовании функции lang:

---
lang: el
mainfont: GFS Didot
output:
   pdf_document:
      latex_engine: xelatex
---


Αυτά είναι ελληνικά [the quick brown fox jumps over the lazy dog]{.class lang="en"}

Αυτά είναι ελληνικά

::::: {.class lang="en"}

Here is a paragraph.

And another.

:::::

Αυτά είναι ελληνικά

Обратите внимание, что вам может потребоваться обновить fontspec / mathspec / polyglossia, чтобы избежать этой проблемы .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...