图像通过 RMarkdown 中的短代码使用 blogdown 不显示

pet*_*tzi 3 r r-markdown hugo blogdown hugo-shortcode

我想使用 blogdown 通过 RMarkdown 文件中的短代码显示图像。我使用代码:

```{r echo=FALSE}
blogdown::shortcode("figure", src = "/img/to/path/my-picture.png", alt = "Some alt text")
```
Run Code Online (Sandbox Code Playgroud)

我没有收到错误消息,只是网站上有一个空白区域。图片不显示。简码通常有效,我用推特卡试过了。

路径是正确的,因为使用 knitr 显示相同的图片。(该路径也可用作普通.md文档中的简码。)如果我不在我的.Rmd文件中使用 alt 参数,则短代码命令的代码将显示在网站上——不仅适用于此命令,而且适用于所有其他命令(以前工作)短代码也是如此。例如,我得到了以下网页片段:

{{% figure src=/img/to/path/my-picture.png %}}
But shortcode works, here is a tweet card: {{% tweet 852205086956818432 %}}
Run Code Online (Sandbox Code Playgroud)

另一个与数字相关的问题:如果我使用标准命令:

![some alt text](/img/to/path/my-picture.png)
Run Code Online (Sandbox Code Playgroud)

网页在图片下方显示替代文字“一些替代文字”。

我正在使用 Hugo-academic 主题,这是我的会话信息:

R version 3.4.1 (2017-06-30)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Sierra 10.12.6

Matrix products: default
BLAS: /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.4/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

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

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.12    bookdown_0.5    digest_0.6.12   rprojroot_1.2   mime_0.5        backports_1.1.0
 [7] magrittr_1.5    evaluate_0.10.1 blogdown_0.1    stringi_1.1.5   rmarkdown_1.6   tools_3.4.1    
[13] servr_0.7       stringr_1.2.0   httpuv_1.3.5    yaml_2.1.14     compiler_3.4.1  htmltools_0.3.6
[19] knitr_1.17 
Run Code Online (Sandbox Code Playgroud)

小智 5

我能够用不同的主题(Beautiful Hugo)重新创建这个问题。看起来 blogdown 函数正在从 src 中剥离引号。我能够通过将引号括在单引号中来修复它。

blogdown::shortcode("figure", src = '"/img/to/path/my-picture.png"', alt = "Some alt text")
Run Code Online (Sandbox Code Playgroud)