bookdown包。为什么我之前能建的书不能建,得到一个与split_by选项有关的错误信息?

问题描述 投票:2回答:1

R项目及相关文件可参考 此处.

我建立了一个gitbook与 bookdown 去年12月,你可能会发现,在 https:/bookdown.orgritsu_kitagawa_book6。.

当我第一次建立它的时候,并没有出现任何有关的错误。split_by 选项。但现在我收到一条错误信息说

Error in split_chapters(output, gitbook_page, number_sections, split_by,  : 
  Automatically generated filenames contain duplicated ones: -, -, -, -, -, -, -, -, -
Calls: <Anonymous> ... <Anonymous> -> <Anonymous> -> split_chapters -> <Anonymous>

当我试图建立同样的书时。

我的YAML如下。

--- 
title: "『Rによる原因を推論する』"
author: "北川 梨津,原 健人"
date: "`r Sys.time()`"
site: bookdown::bookdown_site
output: bookdown::gitbook
documentclass: book
bibliography: [book.bib, packages.bib]
biblio-style: apalike
link-citations: yes
github-repo: rstudio/bookdown-demo
description: "久米ゼミのプレゼミのための教材です."
cover-image: "gennin.png"
favicon: "gennin.png"
apple-touch-icon: "gennin.png"
---

这本书是用日语写的。我知道,如果我设置了这个参数,我就可以强迫它被构建。split_by 选择 none. 我想知道为什么我不能建立一个文件,我可以。

谁能告诉我为什么会出现这种情况?是否有任何更新或什么?

谢谢你。


这里是一个 简易工例. 我也不能建立这个。我得到了同样的错误信息。

Error in split_chapters(output, gitbook_page, number_sections, split_by,  : 
  Automatically generated filenames contain duplicated ones: -
Calls: <Anonymous> ... <Anonymous> -> <Anonymous> -> split_chapters -> <Anonymous>
Execution halted

Exited with status 1.

下面是我的会议信息

R version 3.6.2 (2019-12-12)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Mojave 10.14.6

Locale: en_US.UTF-8 / en_US.UTF-8 / en_US.UTF-8 / C / en_US.UTF-8 / en_US.UTF-8

Package version:
  base64enc_0.1.3 bookdown_0.17   compiler_3.6.2  digest_0.6.24   evaluate_0.14   glue_1.3.1     
  graphics_3.6.2  grDevices_3.6.2 highr_0.8       htmltools_0.4.0 jsonlite_1.6.1  knitr_1.28     
  magrittr_1.5    markdown_1.1    methods_3.6.2   mime_0.9        Rcpp_1.0.3      rlang_0.4.4    
  rmarkdown_2.1   stats_3.6.2     stringi_1.4.5   stringr_1.4.0   tinytex_0.19    tools_3.6.2    
  utils_3.6.2     xfun_0.12       yaml_2.2.1 

如果我在章节名称中加入一些字母,就可以成功构建。

rstudio r-markdown bookdown
1个回答
0
投票

你可能已经看不到了,但我自己也经历了同样的麻烦,我想我找到了解决的办法,所以我在这里留下我的答案。

在我的案例中,我有几个章节不想被编号,当我试图从rmd文件中创建html文件时,这些章节的html文件名都会是"-.html"。所以,正如错误信息所说的那样,"自动生成的文件名包含重复的"。

同样的事情也发生在章节或节的标题(万一你在YAML部分指定了 "split_by:section")是日文的情况下,这些文件名都会是"-.html." 我想你的情况可能就是这个原因。

在过去的bookdown版本中,每一个文件的命名都不一样,在这种情况下,每一个文件都有序列号,比如"-01.html," "-02.html,"等等。但不知为何,在当前的版本中似乎有所改变。

所以,解决这个问题的办法是为每一章(或每一节)的标题明确地添加不同的标签,如: 。

#はじめに {#intro}

如果你不想给章节标题编号,就在标签前加个减号,比如:

#はじめに {-#intro}

在我的情况下,这就解决了问题。

在这种情况下,如果我使用了 split_by: section+number 在YAML部分的选项,但这并不奏效。

© www.soinside.com 2019 - 2024. All rights reserved.