Указание файла `.bst` в` biblio-style` не работает при вязании `bookdown :: pdf_document2` - PullRequest
0 голосов
/ 30 августа 2018

Я бы хотел настроить стиль цитирования, когда я вяжу файл .Rmd с параметром bookdown::pdf_document2, указав biblio-style в своем разделе YAML. Я видел, что использование .csl файла вместо .bst решило некоторые прежние вопросы о форматировании разделов цитирования в bookdown (как это или это ). Однако в моем случае я должен указать, какой файл .bst использовать в строке biblio-style в YAML .Rmd, поскольку нет файла .csl, который удовлетворял бы моему стилю цитирования ...

Я пытаюсь использовать jecon-unicode.bst для создания своих разделов цитирования (я изменил имя файла на jeconunicode.bst в моем рабочем каталоге из-за ошибки с дефисом в имени файла ). С помощью этого файла я могу ссылаться на документы, опубликованные на английском языке в стиле АПА, и одновременно я могу также сослаться на документы, написанные на японском языке в соответствии со стилем, который рекомендуют некоторые академические общества в Японии. Я намерен сделать разделы цитирования, как показано ниже:

Желаемый результат

In-text Citation

Сузуки и Танака (2032)

鈴木 ・ 田中 (2021)

Как видите, «・» разделяет имена нескольких авторов в цитатах в тексте, когда документ написан на японском языке.

Справочный раздел

Сузуки, Ичиро и Таро Танака (2032) «Наше первое расследование: это Это не первое, но это должно быть последним. Дневник чего-то Том 23, № 5, с. 19–176.

* 1040 鈴木 一 郎 田中 太郎 (2021) : わ れ ら の 128 に つ つ : : 変 貌 を を げ つ あ頁.

В справочном разделе jeconunicode.bst также будет обрабатывать японский и английский документы по-разному, без создания разных справочных разделов для каждого языка (т. Е. Справочная глава, которую я хочу создать, отличается от this ). Например, в том же разделе библиографии Japanese 」『 』используются для имен документов на японском языке, а« »и курсив используются для изменения имен документов на английском языке.

Чтобы активировать jeconunicode.bst , я написал Test.Rmd, вставив в него myref.bib.

Test.Rmd

---
title: "Title"
author: "Name"
date: "`r format(Sys.time(), '%Y年 %B %d日')`"
output:
  bookdown::pdf_document2:
    latex_engine: lualatex
    keep_tex: yes
    toc: TRUE
    toc_depth: 2
    number_sections: TRUE
    fig_caption: TRUE
    dev: cairo_pdf
    extra_dependencies: subfig
    citation_package: natbib
link-citations: yes    
always_allow_html: yes
documentclass: ltjsarticle
header-includes:
   - \RequirePackage{luatexja}
   - \usepackage{graphicx}
   - \usepackage{float}
   - \DeclareGraphicsExtensions{.pdf,.PNG}
   # You can unset Japanese font specification
   # - \usepackage{luatexja-fontspec}
   # - \setmainjfont{YuMincho}[UprightFont=YuMincho-Regular,BoldFont=YuMincho-Demibold]
   # - \setmainfont{TeX Gyre Termes}
   # - \setsansjfont{YuGothic-Medium}[BoldFont=YuGothic-Bold]
   # - \setsansfont{TeX Gyre Heros}
   - \setlength\parskip{0mm}
   - \setlength\parindent{1\Cwd}
   - \usepackage[japanese]{babel}
   - \captionsjapanese
   - \newdimen\bibindent
   - \setlength\bibindent{3\Cwd}
bibliography: myref.bib
biblio-style: jconunicode.bst
editor_options:
  chunk_output_type: console
---

# 何とかの考察に関する歴史

@ST-jp は、「なんとかとは何とかだ!」[@ST-jp]と述べた。
しかし、@ST-en では一転して、
「Something should be more significant than something!!」[@ST-en]と
主張している。



# 参考文献 {-}

\leftskip=3\Cwd

\setlength\parindent{-3\Cwd}

<div id="refs"></div>

\leftskip=0pt

\setlength\parindent{1\Cwd}

myref.bib

Чтобы jeconunicode.bst распознавал, какая статья написана на японском языке, необходимо добавить language = {Ja}.

@article{ST-jp,
title = {われらの発見について:変貌を遂げつつある何とかの将来に関する過去・現在・未来},
journal = {何十華論考},
volume = 42,
number = 5,
pages = {128 -- 182},
year = {2021},
author = {鈴木, 一郎 and 田中, 太郎},
language = {ja}
}

@article{ST-en,
title = {Our first investigation: this is not the first, but this should be the last},
journal = {Journal of Something},
volume = 23,
number = 5,
pages = {19 -- 176},
year = 2032,
author = {Suzuki, Ichiro and Tanaka, Taro}
}

Однако я получил пока только нежелательный результат. jeconunicode.bst , указанный в параметре biblio-style, не влияет на вывод и используется стиль цитирования по умолчанию, хотя я помещаю файлы .Rmd, .bst и .bib в тот же каталог.

Текущий нежелательный результат

Цитирование в тексте

Сузуки и Танака (2032)

鈴木 и 田中 (2021)

Справочный раздел

Сузуки, Ичиро и Таро Танака. 2032. «Наше первое расследование: это Это не первое, но это должно быть последним. Дневник чего-то 23 (5): 19–176.

鈴木, 一郎 и 田中 太郎. 2021. «わ れ ら の 発 見 に つ い : : 変 貌 を 遂 げ つ つ あ る る 何 の の 関 す す 過去 ・” ”.» 十 華 華 論 考 10 42

128 *1094* 42 (5): 1094 * 42 (5)

Есть ли какой-нибудь хороший способ привести в гармонии японский и английский (или любые языки с латинским алфавитом), как я указал выше?

Информация о моей сессии

Я использую учетную запись в RStudio, как показано ниже, с TeXLive 2018, под Windows 10:

>devtools::session_info(('bookdown'))
Session info ---------------------------------------------------------------------------------------
 setting  value                       
 version  R version 3.4.3 (2017-11-30)
 system   x86_64, mingw32             
 ui       RStudio (1.1.453)           
 language (EN)                        
 collate  Japanese_Japan.932          
 tz       Asia/Tokyo                  
 date     2018-08-30                  

Packages -------------------------------------------------------------------------------------------
 package   * version date       source        
 backports   1.1.2   2017-12-13 CRAN (R 3.4.3)
 base64enc   0.1-3   2015-07-28 CRAN (R 3.4.1)
 bookdown    0.7     2018-02-18 CRAN (R 3.4.4)
 digest      0.6.15  2018-01-28 CRAN (R 3.4.3)
 evaluate    0.10.1  2017-06-24 CRAN (R 3.4.3)
 graphics  * 3.4.3   2017-12-06 local         
 grDevices * 3.4.3   2017-12-06 local         
 highr       0.6     2016-05-09 CRAN (R 3.4.3)
 htmltools   0.3.6   2017-04-28 CRAN (R 3.4.3)
 jsonlite    1.5     2017-06-01 CRAN (R 3.4.3)
 knitr       1.20    2018-02-20 CRAN (R 3.4.4)
 magrittr    1.5     2014-11-22 CRAN (R 3.4.3)
 markdown    0.8     2017-04-20 CRAN (R 3.4.3)
 methods   * 3.4.3   2017-12-06 local         
 mime        0.5     2016-07-07 CRAN (R 3.4.1)
 Rcpp        0.12.18 2018-07-23 CRAN (R 3.4.4)
 rmarkdown   1.10    2018-06-11 CRAN (R 3.4.4)
 rprojroot   1.3-2   2018-01-03 CRAN (R 3.4.4)
 stats     * 3.4.3   2017-12-06 local         
 stringi     1.1.6   2017-11-17 CRAN (R 3.4.2)
 stringr     1.2.0   2017-02-18 CRAN (R 3.4.3)
 tinytex     0.6     2018-07-07 CRAN (R 3.4.4)
 tools       3.4.3   2017-12-06 local         
 utils     * 3.4.3   2017-12-06 local         
 xfun        0.3     2018-07-06 CRAN (R 3.4.4)
 yaml        2.1.16  2017-12-12 CRAN (R 3.4.3)

1 Ответ

0 голосов
/ 31 августа 2018

Мне не удалось воспроизвести вашу проблему со следующим тестовым файлом:

---
title: "Title"
author: "Name"
date: "`r format(Sys.time(), '%Y年 %B %d日')`"
output:
  bookdown::pdf_document2:
    latex_engine: lualatex
    keep_tex: yes
    toc: TRUE
    toc_depth: 2
    number_sections: TRUE
    fig_caption: TRUE
    dev: cairo_pdf
    extra_dependencies: subfig
    citation_package: natbib
link-citations: yes    
always_allow_html: yes
documentclass: ltjsarticle
header-includes:
   - \RequirePackage{luatexja}
   - \usepackage{graphicx}
   - \usepackage{float}
   - \DeclareGraphicsExtensions{.pdf,.PNG}
   - \usepackage{luatexja-fontspec}
   - \setmainfont{TeX Gyre Termes}
   - \setsansfont{TeX Gyre Heros}
   - \setlength\parskip{0mm}
   - \setlength\parindent{1\Cwd}
   - \usepackage[japanese]{babel}
   - \captionsjapanese
   - \newdimen\bibindent
   - \setlength\bibindent{3\Cwd}
bibliography: myref.bib
biblio-style: jeconunicode
editor_options:
  chunk_output_type: console
---

# 何とかの考察に関する歴史

@ST-jp は、「なんとかとは何とかだ!」[@ST-jp]と述べた。
しかし、@ST-en では一転して、
「Something should be more significant than something!!」[@ST-en]と
主張している。


# 参考文献 {-}

\leftskip=3\Cwd

\setlength\parindent{-3\Cwd}

<div id="refs"></div>

\leftskip=0pt

\setlength\parindent{1\Cwd}

Вместо того, чтобы выдавать нежелательный вывод, мой HD был заполнен несколькими ГБ сообщений об ошибках от bibtex. Среди многих других было:

is.kanji.str$ is an unknown function---line 1643 of file jeconunicode.bst
is.kanji.str$ is an unknown function---line 1644 of file jeconunicode.bst
is.kanji.str$ is an unknown function---line 1645 of file jeconunicode.bst
is.kanji.str$ is an unknown function---line 1646 of file jeconunicode.bst

Я подумал, что мне следует использовать pbibtex вместо bibtex. Действительно, обработка результирующих файлов tex и aux вручную с помощью pbibtex и lualatex работала нормально. Поскольку я не нашел способа настроить это, я просто создал символическую ссылку:

ln -s /usr/bin/pbibtex ~/bin/bibtex

Таким образом, звонок на bibtex фактически вызовет pbibtex. После этого документ скомпилировался, хотя потребовалось несколько вызовов «Knit» в RStudio для разрешения ссылок:

enter image description here

Для меня это выглядит как желаемый результат. Я не могу объяснить, почему вы видите разные результаты.

> devtools::session_info(('bookdown'))
Session info -----------------------------------------------------------------------------------------
 setting  value                       
 version  R version 3.5.1 (2018-07-02)
 system   x86_64, linux-gnu           
 ui       RStudio (1.2.830)           
 language (EN)                        
 collate  de_DE.UTF-8                 
 tz       Europe/Berlin               
 date     2018-08-31                  

Packages ---------------------------------------------------------------------------------------------
 package   * version date       source                         
 backports   1.1.2   2017-12-13 CRAN (R 3.5.0)                 
 base64enc   0.1-3   2015-07-28 CRAN (R 3.5.0)                 
 bookdown    0.7     2018-02-18 CRAN (R 3.5.0)                 
 digest      0.6.16  2018-08-22 CRAN (R 3.5.1)                 
 evaluate    0.11    2018-07-17 CRAN (R 3.5.1)                 
 glue        1.3.0   2018-08-24 Github (tidyverse/glue@4e74901)
 graphics  * 3.5.1   2018-07-03 local                          
 grDevices * 3.5.1   2018-07-03 local                          
 highr       0.7     2018-06-09 CRAN (R 3.5.0)                 
 htmltools   0.3.6   2017-04-28 CRAN (R 3.5.0)                 
 jsonlite    1.5     2017-06-01 CRAN (R 3.5.0)                 
 knitr       1.20    2018-02-20 CRAN (R 3.5.0)                 
 magrittr    1.5     2014-11-22 CRAN (R 3.5.0)                 
 markdown    0.8     2017-04-20 CRAN (R 3.5.0)                 
 methods   * 3.5.1   2018-07-03 local                          
 mime        0.5     2016-07-07 CRAN (R 3.5.0)                 
 Rcpp        0.12.18 2018-07-23 CRAN (R 3.5.1)                 
 rmarkdown   1.10    2018-06-11 CRAN (R 3.5.0)                 
 rprojroot   1.3-2   2018-01-03 CRAN (R 3.5.0)                 
 stats     * 3.5.1   2018-07-03 local                          
 stringi     1.2.4   2018-07-20 CRAN (R 3.5.1)                 
 stringr     1.3.1   2018-05-10 CRAN (R 3.5.0)                 
 tinytex     0.8     2018-08-30 CRAN (R 3.5.1)                 
 tools       3.5.1   2018-07-03 local                          
 utils     * 3.5.1   2018-07-03 local                          
 xfun        0.3     2018-07-06 CRAN (R 3.5.1)                 
 yaml        2.2.0   2018-07-25 CRAN (R 3.5.1) 
...