制作一篇 Gopher 风格的 slide, 没有其他要求, 只需要将幻灯片放在你的 Github 仓库即可.

当然, 此幻灯片需要满足某些格式, 这就是 present.

Present 文件格式

封面幻灯

第一个非空白, 非注释行是标题

头文件如下:

1
2
3
4
5
6
7
8
9
这是标题
这是子标题
25 Jun 2019
Tags: foo, bar, baz

damao
Engineer
deardamao@gmail.com
[[https://github.com/simpleowen][simpleowen]]

子标题行, 日期时间行, 标签行都是可选的.

日期时间行可以省略时间只剩日期 25 Jun 2019, 这种情况下, 时间将被解释为此日期的 UTC 时间上午 10 点.

标签行以逗号分隔

作者部分可以是姓名, 头衔, 公司, 链接的混合.

空行分隔多个作者

演示内容

接下来制作幻灯片的内容

每个幻灯片都以空行分隔

幻灯片的每一部分也以空行分隔

以 # 开头的行是注释

  • 内联链接

链接可以包含在[[url][label]]或[[url]]形式的任何文本中,以使用URL本身作为标签

模板函数

模板函数以 点+函数名+若干参数 开头.

以下是一些函数功能描述:

  • 代码

插入代码块

-edit 选项: 可编辑

.code -edit test.go

-numbers 选项: 显示行号

.code -numbers test.go

  • play

play 与 code 类似, 但是多了一个按钮在界面上, 可以在浏览器中运行代码并输出结果.

  • 超链接

.link http://golang.org golang.org

创建一个超链接, 可带 1 到 2 个以 空格 分隔的参数, 第一个参数一般是 HTTP URL, 第二个参数是链接的显示文本.

  • 图片

插入图片

.image images/betsy.jpg 100 200

可带 1 到 3 个以 空格 分隔的参数, 第一个参数一般是图片文件名, 如果有更多参数, 它们是高度和宽度, 这两个参数必须同时存在, 或以下划线代替

.image images/janet.jpg _ 300

  • 视频

插入视频

2 到 4 个以 空格 分隔的参数, 第一个参数是视频文件名, 第二个参数是文件内容类型, 如果有更多参数, 它们是高度和宽度, 这两个参数必须同时存在, 或以下划线代替.

.video videos/evangeline.mp4 video/mp4 400 600

.video videos/mabel.ogg video/ogg 500 _

  • 背景

.background images/pic.jpg

  • 字幕

.caption

  • 嵌入页面

iframe 表示页中页. 语法与 image 语法一样.

.iframe index.html 100 200

  • html

.html file.html

展示未转义的 html 内容

  • 演示备注

运行 present 格式文件时, 添加 -notes 选项可以启用演示备注.

你可以在显示幻灯片的浏览器窗口中按下 N 键来开启第二个窗口.

第二个窗口与第一个窗口是完全同步的, 演示备注只会显示在第二个窗口中.

以冒号开头的行是演示备注.

1
2
3
4
5
6
* Title of slide

Some Text

: Presenter notes (first paragraph)
: Presenter notes (subsequent paragraph(s))

演示备注可以出现在演示文稿的任何地方.

1
2
3
4
5
6
7
* Title of slide

: Presenter notes (first paragraph)

Some Text

: Presenter notes (subsequent paragraph(s))

本地调试幻灯片

运行 present 命令, 打开 http://127.0.0.1:3999 查看效果.

1
2
➜ ~ present
2019/06/26 10:46:41 Open your web browser and visit http://127.0.0.1:3999

Present Everywhere

待解决问题

  1. 拒绝访问

    1
    
    .iframe https://www.zhihu.com/question/22478049 500 800

知乎返回: www.zhihu.com refused to connect.

  1. 无法打开 html

    1
    
    .html https://www.zhihu.com/question/22471467

无法打开 html, 返回: open https:/www.zhihu.com/question/22471467: no such file or directory

  1. 无法获取真实的视频地址

视频网址一般都提供 复制视频网址复制视频通用代码 功能:

复制视频网址

1
https://v.youku.com/v_show/id_XMTYyNjYwMTcwOA==.html?from=s1.8-1-1.2

复制视频通用代码

1
<iframe height=498 width=510 src='http://player.youku.com/embed/XMTYyNjYwMTcwOA==' frameborder=0 'allowfullscreen'></iframe>

但以上功能都无法获取视频真实地址, 无法通过 .video 嵌入, 但是可通过 .iframe 嵌入.

Ref