2

我无法调试为什么从我的 bookdown 生成的 HTML

  1. 仅在 Chrome 上显示搜索按钮(不在 Firefox 或 Safari 中),
  2. 即使 CTRL-F 可以在 Chrome 中执行任何操作,并且
  3. 当我使用 CTRL-F 时,只搜索本地页面而不是整本书。

一些已出版的 Rmarkdown 书籍的行为有所不同。例如,使用 R Markdown 在R 中单击 Data Science and Authoring Books的搜索图标会在Safari 和 Chrome 的目录上方弹出一个搜索框,而 CTRL-F 会弹出本地页面搜索。没有用于翻阅结果的箭头——我需要使用键盘上的向上/向下箭头键。这种行为会比我能够实现的更好,但我不知道我需要包括什么才能实现它。

我的例子是书的长度,但它都在 GitHub 上develop的 repo 的分支上。如果您克隆该存储库,则可以使用stan-dev/stan

> make doc/reference-manual/index.html

并且索引将在该位置。

编辑:我尝试用手册中的一个精确副本替换 bookdown::gitbook 配置,但它仍然没有产生一个有效的搜索按钮。

4

2 回答 2

3

bookdown的 gitbook 格式的搜索是通过lunr.js实现的,不依赖外部搜索服务。您的图书内容将写入本地 JSON 文件,当您在搜索框中键入内容时,lunr.js 将查询该文件。

对您的问题的简短回答是,您需要通过 HTTP 服务器提供您的图书(因为您的浏览器无法通过该file://协议读取 JSON 文件)。一种方法是bookdown::serve_book().

于 2018-07-22T19:41:38.970 回答
0

我想说“放大镜”(搜索工具)在 bookdown::serve_book(); 之后工作正常;它生成了一个 html,仍然可以正常工作,但是当 html 传输到 github 时,搜索工具以及箭头(轮播)键消失了;这些键被一个功能性的浅色方块取代,就像箭头获得了“透明”颜色。我已将 style.css 添加到 github 上正确的 docs 文件夹中。

于 2020-11-06T11:38:34.107 回答