R/exams:如何更改 exams2html 生成的默认 "Exam 1"
R/exams: How to change default "Exam 1" produced by exams2html
有没有办法通过传递参数将“Exam 1”更改为“Homework 1”之类的另一个词?
如果没有,是否有我可以修改的默认模板?
我最后的办法是修改内置的html文件,但不太方便。
exams2html()
函数接受一个参数 template
,默认为 "plain.html"
。此模板随 exams
包一起提供,包含:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Exam ##ID##</title>
<style type="text/css">
body{font-family: Arial, Helvetica, Sans;}
</style>
<meta charset="utf-8" />
</head>
<body>
<h2>Exam ##ID##</h2>
##\exinput{exercises}##
</body>
</html>
##ID##
替换为 ID(从 1 到 n
),##\exinput{exercises}##
替换为包含问题和可选的有序列表 <ol>
解决方案。您可以根据需要以任何方式修改此模板并调用它,例如 homework.html
。然后你可以调用:
exams2html(..., template = "/path/to/homework.html",
question = "<h4>Exercise</h4>", solution = FALSE)
设置模板并修改问题的显示方式,同时抑制解决方案。
备注: 占位符 ##ID##
和 ##\exinput{exercises}##
有点尴尬(类似于 LaTeX 模板中 exams2pdf()
的占位符)和不是很灵活。我一直希望使它更灵活,例如,通过 whisker
包使用 {{mustache}}
模板,但到目前为止我还没有抽出时间来解决这个问题。
有没有办法通过传递参数将“Exam 1”更改为“Homework 1”之类的另一个词?
如果没有,是否有我可以修改的默认模板?
我最后的办法是修改内置的html文件,但不太方便。
exams2html()
函数接受一个参数 template
,默认为 "plain.html"
。此模板随 exams
包一起提供,包含:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Exam ##ID##</title>
<style type="text/css">
body{font-family: Arial, Helvetica, Sans;}
</style>
<meta charset="utf-8" />
</head>
<body>
<h2>Exam ##ID##</h2>
##\exinput{exercises}##
</body>
</html>
##ID##
替换为 ID(从 1 到 n
),##\exinput{exercises}##
替换为包含问题和可选的有序列表 <ol>
解决方案。您可以根据需要以任何方式修改此模板并调用它,例如 homework.html
。然后你可以调用:
exams2html(..., template = "/path/to/homework.html",
question = "<h4>Exercise</h4>", solution = FALSE)
设置模板并修改问题的显示方式,同时抑制解决方案。
备注: 占位符 ##ID##
和 ##\exinput{exercises}##
有点尴尬(类似于 LaTeX 模板中 exams2pdf()
的占位符)和不是很灵活。我一直希望使它更灵活,例如,通过 whisker
包使用 {{mustache}}
模板,但到目前为止我还没有抽出时间来解决这个问题。