在 Slidify 中将全局资产用于多个平台

Using global assets for multiple decks in Slidify

我有一个结构如下的项目

- master
    - deck1
        - index.Rmd
        - assets
        - libraries
    - deck2
        - index.Rmd
        - assets
        - libraries

我在 assets/css/ 中对每个套牌应用了一些 css 修改,我想将它们应用到所有套牌(不止两个)。理想情况下,我会通过在与 deck1deck2 相同的级别上使用一个 assets 文件夹(和库),然后从 yaml front matter 调用它来做到这一点。像这样...

- master
    - assets
    - libraries
    - deck1
        - index.Rmd
    - deck2
        - index.Rmd

我试过这个:

assets: {assets: ./../../assets}

...以及 ./ 的所有可能组合,但似乎没有任何效果。也就是说,我的 css 更改并未应用于每个套牌。有谁知道如何做到这一点?或者 slidify 只在与 index.Rmd 文件相同的目录中查找?

有趣的是,我能够通过在前面使用这个来使 slidify 将库文件夹与 deck 文件夹放在同一级别(并且它似乎被所有 decks 使用):

url: {lib: ../libraries} 

...但这不适用于资产文件夹。

可以按照上述方式使用全局资产文件夹。关键是在 yaml front matter 的 url 部分包含资产文件夹路径。例如:

url: {lib: ../libraries, assets: ../assets}

这会将库和资产文件夹置于 index.Rmd 文件之上的一个目录。像这样:

- master
    - assets
    - libraries
    - deck1
        - index.Rmd
    - deck2
        - index.Rmd

此答案由 ramnathv (4/24/2015) 在 github slidify here 存储库中提供。