根据Reveal.js setup instructions的说法,要使某些功能可用(如外部Markdown和演讲者备注),演示文稿需要在本地Web服务器上运行。

但是,如果我按照说明进行操作,则无法指定要开始的演示文稿,而我得到的只是一个包含两个幻灯片的演示文稿,分别是“幻灯片1”和“幻灯片2”。当查看section above时,似乎是represent.js存储库中的呈现“index.html”,即不是我要呈现的呈现。

如何从本地Web服务器运行演示文稿,而又没有将manifest.js文件夹的内容复制或移动到演示文稿所在的文件夹中,又没有复制,移动或重命名该演示文稿?

最佳答案

使用symbolic links

假设您的家中有一个目录,您可以在其中保存所有演示文稿。在安装reveal.js的目录中运行:

ln -s ~/presentations presentations

然后在浏览器中访问http://localhost:8000/presentations以获取所有演示文件的列表(当然,如果其中一个文件名为index.html则除外)。单击其中任何一个以显示它。

注意:如果您的演示文稿位于服务器的根目录(安装了Reveal.js的目录)之外,则explicit.js资源链接必须是绝对的,而不是相对的。这样,它们将相对于根目录(really.js所在的位置)而不是当前目录(演示文稿所在的位置)被拾取。

例如。在示例演示文件中,您需要将以下几行:
<link rel="stylesheet" href="css/reveal.css">
<link rel="stylesheet" href="css/theme/black.css">
<link rel="stylesheet" href="lib/css/zenburn.css">
<script src="lib/js/head.min.js"></script>
<script src="js/reveal.js"></script>
{ src: 'plugin/markdown/marked.js' },
{ src: 'plugin/markdown/markdown.js' },
{ src: 'plugin/notes/notes.js', async: true },
{ src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }

进入:
<link rel="stylesheet" href="/css/reveal.css">
<link rel="stylesheet" href="/css/theme/black.css">
<link rel="stylesheet" href="/lib/css/zenburn.css">
<script src="/lib/js/head.min.js"></script>
<script src="/js/reveal.js"></script>
{ src: '/plugin/markdown/marked.js' },
{ src: '/plugin/markdown/markdown.js' },
{ src: '/plugin/notes/notes.js', async: true },
{ src: '/plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }

09-25 16:55