我正在用R/ some的exams2moodle为Moodle写一些小测验。XML文件被创建得很好,我可以将测试导入Moodle ok,但是,任何将R代码作为问题或解决方案的一部分的问题,都有在黑暗背景下的R代码,因此几乎无法读取。有什么地方可以控制这种情况吗?
我使用这段代码来创建XML:
exams2moodle(c("q1.Rmd", "q2b.Rmd", "q3.Rmd", "q4.Rmd", "q5.Rmd", "q6.Rmd"),
name = "GLM_prac1",
iname = FALSE,
converter = "pandoc-mathjax",
cloze = list(cloze_schoice_display = "MULTICHOICE_V"))这就是这个问题的一个例子:

发布于 2021-01-19 23:20:18
所显示的R代码的颜色不是通过exams2moodle()控制的,至少不是显式的。exams2moodle()所做的是将逐字代码输入和输出放入这个<pre><code> ... </code></pre>的标准HTML标记中。这代表预先格式化的文本和标记的打字机代码。(实际上,这甚至不是由exams2moodle()直接生成的,而是由pandoc生成的。)
然后,通过Moodle安装中使用的CSS样式来控制这些标准HTML标记的呈现。在一个香草Moodle安装,你现在只是得到一个黑色字体在相同的浅蓝色背景为常规文本。在以前的版本中,背景是浅灰色的。考虑到您的文本有淡橙色背景,代码有深色背景,我想这是Moodle安装中的一个设置。因此,我建议与你们大学的Moodle团队联系,并询问他们这个问题。这似乎是一个糟糕的环境,可能也会影响到其他人。
如果您无法与Moodle团队取得联系,或者他们不愿意更改CSS,您可以在练习中插入您自己的自定义CSS代码。这样做的好处是你可以完全控制颜色。缺点是,您自己必须将这种样式代码包含在需要的每一项练习中。这并不难,但却很乏味。例如,您可以在“问题”部分开始时的练习中直接包含以下R代码块:
Question
========
```{r, echo = FALSE, results = "asis"}writeLines(“
pre {
背景:#FFFFFF00
}
")
这只是在您的Rmd练习中插入一个带有CSS的简短HTML片段:
<style>
pre {
background: #FFFFFF00
}
</style>这将指示浏览器对所有<pre>-formatted块使用背景色<pre>(完全透明的白色)。当然,你也可以玩这个,并使用不同的颜色,比如#EEEEEE (浅灰色)或类似的颜色。
https://stackoverflow.com/questions/65798188
复制相似问题