从RMarkdown文档为Jekyll网站构建帖子,并遇到pandoc链接的“有用” URL编码问题。我在此文档上点击了RStudio的“编织”按钮:
---
output: md_document
---
```{r setup, include=FALSE}
knitr::opts_knit$set(base.url = '{{ site.baseurl }}/')
knitr::opts_chunk$set(fig.path = 'assets/images/')
```
```{r sin_plot}
plot(1:100, sin(1:100))
```
我得到了这个降价文件:
plot(1:100, sin(1:100))
![](%7B%7B%20site.baseurl%20%7D%7D/assets/images/sin_plot-1.png)
我需要的是这个降价文件:
plot(1:100, sin(1:100))
![]({{ site.baseurl }}/assets/images/sin_plot-1.png)
液体标签将由Jekyll处理,但pandoc会妨碍操作。
问题以rmarkdown开头
答案 0 :(得分:1)
由于您根本不需要Pandoc,因此也不需要使用 rmarkdown 。您可以只使用“香草” 针织衫(请注意, rmarkdown = 针织衫 + Pandoc),即knitr::knit()
而不是{{ 1}}。
对于Jekyll网站,博客登录可能也使您的生活更加轻松,因为它也支持Jekyll:https://bookdown.org/yihui/blogdown/jekyll.html您无需点击rmarkdown::render()
按钮,而只需Knit
并享受LiveReload。如果您以前从未使用过 blogdown ,则需要至少阅读 blogdown 书的第1章(但请忽略Hugo)。
答案 1 :(得分:0)
如the other answer中所述,“编织”按钮调用RMD := $(shell find _posts/ -name '*.Rmd')
PORT = 4321
export GEM_HOME = ~/.gem
.PHONY: all
all: Gemfile.lock $(RMD:%.Rmd=%.md)
bundle exec jekyll build --drafts --baseurl=/p/$(PORT)
Gemfile.lock:
bundle install
%.md: %.Rmd
Rscript --vanilla -e "knitr::knit('$<', '$@')"
,并且不可避免地是编织+ Pandoc。为了使向该博客做出贡献的RStudio用户可以按一下按钮,我将所有内容都移到了一个简单的Makefile中。
servr::httw('_site')
要进行实时预览,RStudio用户可以在其控制台中运行{{1}}进程,然后单击“构建”按钮进行更新。