文章首发于个人公众号:「阿拉平平」
present[1] 是一个基于终端的幻灯片演示工具,由 Python 开发。本文将介绍 present 的使用方法。
安装
安装前请确保 Python 版本在 3.7 以上。
使用 pip 安装:
$ pip install present
用法
安装后就可以使用 present
了,命令如下:
$ present sample.md
运行效果:
sample.md
操作说明:
- 退出:
q
- 上页:
b
,←,Page Up - 下页:
n
,→,Page Down,空格键 - 重播:位于尾页时,输入
r
语法
幻灯片遵循 Markdown 语法,不过也有些语法是不支持的。
标题
Markdown 中,左侧带有 #
的文字表示标题,#
的数量表示标题的级数。一级标题到六级标题可以这样表示:
# Heading 1
## Heading 2
### Heading 3
#### Heading 4
##### Heading 5
###### Heading 6
标题显示效果如下:
heading.png
从图中可以看到, Heading 3 到 Heading 6 的样式没有区别,所以一张幻灯片的标题应该控制在三级。
文本
Markdown 中文本的语法如下:
- 斜体:文字左右用
*
包裹 - 粗体:文字左右用
**
包裹 - 斜体加粗:文字左右用
***
包裹 - 删除线:文字左右用
~~
包裹 - 超链接:形如:
[link](www.google.com)
- 引用:文字左侧带有
>
测试文本如下:
This is normal text
This is *italic text*
This is **bold text**
This is ***italic and bold text***
This is ~~delete text~~
This is a [link](www.google.com)
As Kanye West said:
> We're living the future so
> the present is our past.
文本显示效果如下:
text.png
由此可知,present 不支持斜体
、斜体加粗
以及 删除线
。
列表
Markdown 的列表分为:无序列表
和 有序列表
。
- 无序列表:使用
-
和缩进
表示。 - 有序列表:使用
序号
和缩进
表示。
列表示例如下:
- Item 1
- Item 1a
- Item 1b
- Item 1c
- Item 2
- Item 2a
1. Item 1
1. Item 1a
2. Item 1b
3. Item 1c
2. Item 2
1. Item 2a
列表显示效果如下
list.png
可以看到,present 会将有序列表显示为无序列表。
代码
Markdown 中显示代码的语法为:
- 单行代码:代码左右用 ` 包裹。
- 代码块:代码段头尾用 ``` 包裹,三个反引号占一行。
示例如下:
This is `inline code`
(```)
import os
os.getcwd()
(```)
代码显示效果如下:
code.png
图片
present 支持显示图片,格式如下:
[图片上传失败...(image-62145-1600154273018)]
示例中的图片路径为相对路径。
分隔
Markdown 中的分隔线可以用 ---
或 ***
表示。需要注意的是,使用 ---
时需要多空一行。
示例:
Slide 1
---
Slide 2
***
Slide 3
present 会将 Markdown 的分隔线识别为分页的标识。
样式
这里的样式与 Markdown 语法无关,present 赋予了每张幻灯片自定义样式的能力,目前支持自定义颜色和动画效果。
示例如下:
Slide 1
---
<!-- fg=black bg=yellow -->
Slide 2
---
<!-- effect=explosions -->
Slide 3
其中,fg
表示字体的颜色,bg
表示背景色,effect
表示使用的动画效果。
目前支持的颜色和效果有:
- 颜色:
black
,red
,green
,yellow
,blue
,magenta
,cyan
,white
- 效果:
fireworks
,explosions
,stars
,matrix
,plasma
Codios
Codio 是 present 很实用的功能,可用于播放录制好的代码块。
运行效果如下:
codio.gif
Codio 是通过编写 YAML 文件实现的。受限于篇幅,这里就不展开了,有兴趣的同学可以参考相关文档 [2] 。
总结
+ 基于终端的幻灯片演示工具,开源且安装简单
+ 遵循 Markdown 语法,易于上手
+ 支持自定义样式,实用的 Codio 功能
- 部分 Markdown 语法不支持
- 不支持显示中文
References
[1] present: https://github.com/vinayak-mehta/present
[2] 文档:https://present.readthedocs.io/en/latest/codio.html
网友评论