2016-03-24 61 views
5

[Moje środowisko Win 7 Pro/R 3.2.1/knitr_1.12.3/R Studio Wersja 0.99.892]rmarkdown: jak korzystać z wielu bibliografii do dokumentu

Próbuję napisać artykuł w .Rmd formatuj za pomocą R Studio, Knit -> PDF i śledzę http://rmarkdown.rstudio.com/authoring_bibliographies_and_citations.html, aby dowiedzieć się, jak uzyskać pandoc i pandoc-citeproc utworzenie w tekście sekcji Referencje i cytatów .

referencje

My BibTeX są w kilku różnych .bib plików, które przy użyciu LaTeX w .Rnw plików są wszystkie znalezione w mój lokalny drzewa texmf poprzez

\bibliography{statistics, graphics} 

I nie wydaje się, aby to pracować z pandoc-citeproc. Mój nagłówek YAML ma następującą, który pracuje dla jeden.bib pliku, tak długo, jak to jest w tym samym katalogu, co plik źródłowy .Rmd:

--- 
    title: "Notes on Testing Equality of Covariance Matrices" 
    author: "Michael Friendly" 
    date: '`r format(Sys.time(), "%B %d, %Y")`' 
    output: 
     pdf_document: 
     fig_caption: yes 
     keep_tex: yes 
     number_sections: yes 
    csl: apa.csl 
    bibliography: statistics.bib 
    --- 

następującą radę w linku podanym powyżej, próbowałem :

bibliography: [statistics.bib,graphics.bib] 

to daje:

pandoc-citeproc.exe: "stdin" (line 50, column 12): 
unexpected ":" 
expecting letter, digit, white space or "=" 
pandoc.exe: Error running filter pandoc-citeproc 
Filter returned error status 1 

[Edit: Dla kompletności, pokażę wygenerowane polecenie pandoc, gdzie wygląda oba pliki .bib są przekazywane prawidłowo]:

"C:/Program Files/RStudio/bin/pandoc/pandoc" +RTS -K512m -RTS EqCov.utf8.md --to latex --from markdown+autolink_bare_uris+ascii_identifiers+tex_math_single_backslash --output EqCov.pdf --template "C:\R\R-3.2.1\library\rmarkdown\rmd\latex\default-1.15.2.tex" --number-sections --highlight-style tango --latex-engine pdflatex --variable graphics=yes --variable "geometry:margin=1in" --bibliography statistics.bib --bibliography graphics.bib --filter pandoc-citeproc 
output file: EqCov.knit.md 

więc nie wszystkie następujące formy:

bibliography: ["statistics.bib","graphics.bib"] 

    bibliography: 
     - "statistics.bib" 
     - "graphics.bib" 

    bibliography: 
     - statistics.bib 
     - graphics.bib 

idealnie, ja chciałby móc skorzystać z jednego z poniższych formularzy i nie musi kopiować plików .bib do katalogu dokumentów.

bibliography: ["C:/Dropbox/localtexmf/bibtex/bib/statistics.bib","C:/Dropbox/localtexmf/bibtex/bib/graphics.bib"] 

bibliography: 
- "C:/Dropbox/localtexmf/bibtex/bib/statistics.bib" 
- "C:/Dropbox/localtexmf/bibtex/bib/graphics.bib" 

Odpowiedz

1

Dla przypomnienia: Podniosłem to jako problem pandoc-citeproc na https://github.com/jgm/pandoc-citeproc/issues/220

Okazuje się, że były problemy w sposób pandoc-citeproc obsługuje niektórych znaków w @{string={}} i non-ASCII znaków .bib plików , więc to, co próbowałem teraz działa, z zakodowanymi ścieżkami, we wszystkich formach, które próbowałem.

Aby działać bardziej jak przetwarzanie .Rnw plików poprzez Latex/BibTeX byłoby miło, aby móc używać coś jak

bibliography: 
    - `r system(kpsewhich statistics.bib)` 
    - `r system(kpsewhich graphics.bib)` 

te polecenia zrobić znaleźć odpowiednie pliki w sesji R, ale nie z nagłówka YAML.