时间:2023-09-28 06:36:01 | 来源:网站运营
时间:2023-09-28 06:36:01 来源:网站运营
用Hugo制作网页PPT:hugo_0.61.0_Windows-64bit.zip
或 hugo_extended_0.61.0_Windows-64bit.zip
(32位电脑请自觉用 32bit)hugo_*.exe
文件重命名为 hugo.exe
,并添加该文件所在目录到 PATH 环境变量中,方便命令行访问hugo help
来验证配置是否成功,成功时输出会包括以下内容:Hugo is a Fast and Flexible Static Site Generatorbuilt with love by spf13 and friends in Go.
hugo new site my-presentationcd my-presentation
如果安装了 git 可以使用 git 安装主题:git initgit submodule add git@github.com:dzello/reveal-hugo.git themes/reveal-hugo
否则需要在 dzello/reveal-hugos 下载 ZIP 文件,解压到 my-presentation/themes/
并确保解压出的文件夹名称是 reveal-hugo
my-presentation
文件夹中的 config.toml
添加以下内容:theme = "reveal-hugo"RelativeURLs = trueCanonifyURLs = true[markup]defaultMarkdownHandler = "blackfriday"[outputFormats.Reveal]baseName = "index"mediaType = "text/html"isHTML = true
最后,在 content
文件夹下,创建 _index.md
文件:+++title = "My presentation"outputs = ["Reveal"]+++# Hello world!This is my first slide.---# Hello Mars!This is my second slide.
上面 +++
框起来的区域用来写网页相关配置头部信息。后面开始是正文内容。my-presentation
目录下执行 hugo
命令。所有生成的静态网站数据在 public
文件夹下,打开 index.html
来查看网站内容。hugo server
命令,会有类似以下输出(不要关闭这个窗口):Web Server is available at http://localhost:1313/ (bind address 127.0.0.1)
这时可以打开 http://localhost:1313/
即可实时预览,当文件有改动时,网页会自动刷新。- content - home # 特殊目录,用于添加内容到网站首页 PPT 之后 - body.md # 添加到首页 PPT 后 - conclusion.md # 添加到首页 PPT 后 - _index.md # 网站首页 PPT - ted-talk - _index.md # ted talk PPT 的开头 - body.md # 添加到 ted talk PPT 后 - conclusion.md # 添加到 ted talk PPT 后
在这个目录结构中,最后会生成两个 PPT,一个是根目录的 PPT,一个是 /ted-talk
路径下的 PPT。在文件夹中的补充 Markdown 文件会按照其中配置头部信息中的 weight
属性排序。如:+++weight = 10+++# Slide 3---# Slide 4
---
空行隔开的 ---
表示分隔到下一页 Slide。{{% section %}}# Vertical slide 1---# Vertical slide 2{{% /section %}}
{{% fragment %}} One {{% /fragment %}}{{% fragment %}} Two {{% /fragment %}}{{% fragment %}} Three {{% /fragment %}}
可以实现增量显示,即开始不显示,每次操作顺次出现。{{% frag c="One" %}}
通过 c
属性确定内容,同上面的第一行。index
属性来指定显示的顺序,如 {{% fragment index=2 %}} One {{% /fragment %}}
。生成的 html 如下:<span class='fragment' data-fragment-index=2> One </span>
data-fragment-index
属性指定显示顺序,从小到大依次显示,数值一样则同时显示。对于行内文字用 <span>
包裹,而段(block
)内容(如代码块、图片)用 <div>
包裹。主题默认没有提供 <div>
类型的 shortcode,可以自己将 themes/reveal-hugo/layouts/shortcodes/fragment.html
复制到 layouts/shortcodes/bfragment.html
文件中,将其中的两个 span
换成 div
。之后用 {{% bfragment %}}
可以使段内容增量显示,而且同样可以用 index
指定显示顺序。---{{< slide id="custom-slide" >}}## Custom slide---
id
属性用来链接引用。如 [Try the link](#custom-slide)
会生成一个链接到对应 id
的 Slide 的链接。{{% note %}}
可以添加演讲者注释信息,在网页端按 s
键可以打开演讲者界面。static
目录下创建 plugin
文件夹,将 reveal.js 的插件放入其中。在需要使用插件的 Markdown 文件头部添加:[reveal_hugo]plugins = ["plugin/math-katex/math-katex.js"]slide_number = true
路径要对应实际的 js 文件。顺便说一句,最后一行的 slide_number
为可选设置,它可以设置是否显示 Slide 页码,取值 true
或 false
。layouts/partials/<path-to-slide>/reveal-hugo
目录下添加 head.html
文件,加上引用所需 css 的 html 代码。s
进入演讲者模式o
进入概览模式f
进入全屏模式?print-pdf
,如 https://gkzhb.gitee.io/slides/?print-pdf
,然后使用 Chrome 的打印功能即可导出为 PDF。{{< markdown >}}
与用 html 渲染 Slide <section data-noprocess> ... </section>
exampleSite/content
目录下可以看到演示 Demo 的源 Markdown 文件,可以作为参考样例。public
文件夹放到 U 盘通过浏览器打开。简单的部署可以选择 Github 或码云(国内推荐,网速更快)的静态网站托管服务。关键词: