R Slideify讲师网站:工作流和自定义

R Slideify讲师网站:工作流和自定义,r,r-markdown,slidify,R,R Markdown,Slidify,我正在开始学习。我非常喜欢这个想法和模板。然而,作为一个新手,我正在努力进行定制 首先让我解释一下这个“讲师网站”架构提供了什么。主代码基于rmarkdown和slidify,布局的定制主要由css文件控制。“讲师网站”由一个html网页组成,作为内容页和访问不同幻灯片“讲师”的起点,其中大部分是自动创建的。它看起来和听起来一样棒 每个讲座都存储在一个单独的目录中,并有自己的“资产”目录。因此,在一个由10节课组成的课程中,一节课有10个目录,每个目录都有自己的css和js。然而,为了实现整个课

我正在开始学习。我非常喜欢这个想法和模板。然而,作为一个新手,我正在努力进行定制

首先让我解释一下这个“讲师网站”架构提供了什么。主代码基于rmarkdown和slidify,布局的定制主要由css文件控制。“讲师网站”由一个html网页组成,作为内容页和访问不同幻灯片“讲师”的起点,其中大部分是自动创建的。它看起来和听起来一样棒

每个讲座都存储在一个单独的目录中,并有自己的“资产”目录。因此,在一个由10节课组成的课程中,一节课有10个目录,每个目录都有自己的css和js。然而,为了实现整个课程的通用风格,我们希望大部分定制都能在所有讲座中共享。我的主要问题是如何处理这个问题

问题:我应该如何处理我想在所有讲座中分享的css定制

通过将css代码插入到和标记之间的每个rmarkdown文件中,我成功地定制了每个讲座,但现在我想将定制带到一个可以共享它们的地方。我希望通过在assets/css中包含一个slidify.css文件,可以提取样式,但事实并非如此:我可能做错了什么,或者我的期望一开始就不正确吗?此外,这些assets/css目录太多了,每次修改时都要将css复制到其中,这将是一件非常乏味的事情。是否有一种机制可以设置一个css文件来覆盖assets/css中的css

我还尝试在rmarkdown文件的顶部做一个“声明”,我在那里看到了一些东西:使用:

但这给出了以下错误消息:

pandoc: Could not fetch slidify.css
slidify.css: openBinaryFile: does not exist (No such file or directory)
Error: pandoc document conversion failed with error 67
Execution halted

另一种方法是在和标记之间自定义一个文本文件。这种方法有什么缺点吗?顺便问一下,从rmarkdown获取外部文件的代码是什么?

请考虑以下结构:

assets      -> put custom img/js/css/layout assets
lectures    -> folder containing lectures
  Lecture 01
  Lecture 02
  Lecture 03
libraries   -> frameworks, highlighters and widgets
index.Rmd   -> Rmd source for home page
site.yml    -> Site related configuration
假设您在一个讲座索引.Rmd文件中。我发现以下内容似乎将本地资产目录“旁路”到源目录“根目录”:

url         : {lib: "../../libraries", assets: "../../assets"}
如果您将css文件放在.././assets/css/custom.css中,也就是根目录结构顶部的“master”assets目录,换句话说,它将由slidify提供源代码。我删除了所有其他资产目录,并没有发现它有任何危害,它们只包含一个文件ribbons.css。虽然没有经过广泛测试,但它可以在Firefox和Chrome上运行

这样,我就可以为所有章节定制一个css

然而,这种结构似乎只适用于HTML5幻灯片框架,而不适用于io2012。对于io2012,我在这里解释了我所做的,它对我有用,但我不知道这是否是正确的方式:

有点牵扯。希望未来版本的slidify能让它变得更简单。将样式文件转储到根资源目录中的一个问题是,在HTML5框架中,所有文件都是源文件。因此,我在assets目录中使用特定于框架的css文件的想法不起作用,因为这些样式都是源代码的,有些样式会相互覆盖。因此,将自定义css文件保存在特定于框架的目录中可能是一种更好的方法

我还发现了以下分享R定制和针织选项的方法,或者其他什么方法

```{r 'preamble', message = FALSE, warning = FALSE, error = FALSE, echo = FALSE, tidy = FALSE, comment = NA, cache = FALSE}  # probably several redundant ones in there
require(knitr) 
opts_chunk$set(echo = FALSE, cache = FALSE)  # example of knit options
source('../../shared/shared.R')  # here I share common R code 
```

据我所知,“讲师网站”模板提供了几个独立的模板,每个模板都必须独立编译,这与我的印象相反,一次编译将重建整个结构,每个“讲师”都有自己的css目录,从有限的测试中我可以看出,根本上没有风格的集中。
```{r 'preamble', message = FALSE, warning = FALSE, error = FALSE, echo = FALSE, tidy = FALSE, comment = NA, cache = FALSE}  # probably several redundant ones in there
require(knitr) 
opts_chunk$set(echo = FALSE, cache = FALSE)  # example of knit options
source('../../shared/shared.R')  # here I share common R code 
```