Как изменить другой стиль библиографии в Bookdown

Я хочу использовать другой библиографический стиль вместо apalike в Bookdown, и когда я перешел на природу, которая является стилем чисел, и построил книгу, это побудило меня:

����: Failed to build the bibliography via bibtex
Please delete bookdown.Rmd after you finish debugging the error.
ִֹͣ��

Exited with status 1.

Есть ли решение? В названии автора и описании есть некоторые китайские иероглифы, это причина?

Заголовок YAML

--- 
title: "title"
author: "aa"
date: "`r Sys.Date()`"
documentclass: ctexbook
bibliography: [book.bib]
biblio-style: nature
link-citations: yes
colorlinks: yes
lot: no
lof: no
geometry: [b5paper, tmargin=2.5cm, bmargin=2.5cm, lmargin=3.5cm, rmargin=2.5cm]
site: bookdown::bookdown_site
description: "dd。"
github-repo: yihui/bookdown-chinese
#cover-image: images/cover.jpg
---

сессия:

R version 3.5.0 (2018-04-23)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)

Matrix products: default

locale:
[1] LC_COLLATE=Chinese (Simplified)_China.936  LC_CTYPE=Chinese (Simplified)_China.936   
[3] LC_MONETARY=Chinese (Simplified)_China.936 LC_NUMERIC=C                              
[5] LC_TIME=Chinese (Simplified)_China.936    

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

other attached packages:
[1] shiny_1.1.0

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.16     rstudioapi_0.7   xml2_1.2.0       knitr_1.20       magrittr_1.5     xtable_1.8-2    
 [7] R6_2.2.2         rlang_0.2.0      bibtex_0.4.2     plyr_1.8.4       httr_1.3.1       stringr_1.3.1   
[13] tools_3.5.0      xfun_0.1         miniUI_0.1.1     htmltools_0.3.6  yaml_2.1.19      assertthat_0.2.0
[19] rprojroot_1.3-2  digest_0.6.15    bookdown_0.7     RefManageR_1.2.0 later_0.7.2      promises_1.0.1  
[25] curl_3.2         evaluate_0.10.1  mime_0.5         rmarkdown_1.9    stringi_1.1.7    compiler_3.5.0  
[31] citr_0.2.0       backports_1.1.2  lubridate_1.7.4  jsonlite_1.5     httpuv_1.4.3    

2 ответа

Решение
  • Загрузите ваш файл.csl с https://www.zotero.org/styles?q=nature и скопируйте его в корневой каталог вашего проекта.
  • Установить в _output.yml citation_package: none
  • Добавьте во все форматы (gitbook, pdf_book, epub_book) в _output.yml строку pandoc_args: [ "--csl", "your-csl-file.csl" ]
  • Удалить или закомментировать в index.Rmd строку biblio-style: apalike

Смотрите для полной процедуры используйте csl-файл для pdf-вывода в bookdown

Вы указываете стиль bibtex nature.bst, но это не доступно в вашей системе. Я также не могу найти его на CTAN. Поиск в CTAN дает две вещи:

Так что либо используйте

 biblio-style: naturemag

или (предпочтительно см. ниже) переключиться на biblatex с помощью

bookdown::pdf_book:
  citation_package: biblatex

в _output.yml, В обоих случаях вы должны убедиться, что установлены необходимые пакеты TeX. Это зависит от дистрибутива TeX. В моем случае (TeXLive упакован для Debian) это означало

sudo apt-get install texlive-publishers texlive-bibtex-extra

Для собственно TeXLive или TinyTeX вы можете использовать в командной строке:

tlmgr install nature
tlmgr install biblatex-nature

Для TinyTeX вы также можете сделать это в R:

library(tinytex)
tlmgr_install('nature')
tlmgr_install('biblatex-nature')

Смотрите раздел обслуживания для более подробной информации.

К сожалению только bbilatex Решение совместимо со стандартными командами цитирования, созданными bookdown, Возможно, можно было бы изменить команды вставки LaTeX для ссылок, но это усложнило бы создание других форматов. К тому же, biblatex это путь для многих библиографических вопросов в LaTeX...

Другие вопросы по тегам