程序员如何写PPT

这个世界上有两种文件,一种是二进制文件,一种是文本文件。虽然本质上都是编码成二进制存储在磁盘上,但是文本文件通过编码规则转换成二进制,可以很方便的通过几乎任何程序解码出来。文本文件是给人读的,二进制文件是给机器执行或载入的。所以如果二进制文件拿来给人读,这就很反人类了。像 Office 的 .doc .xls .ppt 就是这么一些反人类的玩意儿。

幸运的是人们发明了 markdown, html 等可以用纯文本表示出复杂的格式。如果是文本文件,很多事情就变得方便了:你可以使用几乎任何浏览程序或者编辑程序打开;你可以使用 git 对这些文件进行版本控制;可以为他们制作一个自动集成的系统(比如格式检查等);纯文本的格式是确定的,只要遵守格式规范来编写,不像是 .ppt 文件被 Keynote 和 PowerPoint 打开,显示效果可能是不同的;最重要的是:你可以使用你最喜欢的 Vim 编辑器编辑他们!配合适用各种类型的插件,你就可以编辑世界上的任何东西——只要它们是文本文件。

这篇文章会介绍一些不使用微软的 PowerPoint 来制作演示文稿的方法,好处呢,就是上面所介绍的那一些(完美的纯文本),坏处呢,就是可能会有一个 build 的过程,无法所见即所得了。

1 使用 gitpitch

这个是最简单的一个,你只要在 Github 上面上传一个 markdown 文件,然后通过这个网站打开,就自动变成一个 Slides 了。只不过你的 markdown 要稍微对 gitpitch 做一下兼容。其实这个我之前在博客分享过,在公司分享过一次 tmux 就是用这个东西做的 Slides 的。

更新一下评论的 Lisp 大神推荐的 Marp,跟这个思路差不多,也是将 markdown 渲染成演示,但是是本地的编辑器,所见即所得。

2 使用 Jupyter

可能做数据方面的同学比较熟悉 Jupyter,这种基于网页的 REPL 比较好的地方就是渲染图表的时候可以直接显示。Jupyter 功能非常强大,直接运行代码、markdown格式、做图表样样都行。做 Slides 展示也很好看。看过一个同事分享的,效果非常不错。使用教程可以参考这篇。(上图亦来自这篇教程)

3 Read the docs

第一次见到有人使用 readthedocs 做分享是在 Raymond 的视频中(上一篇博客提到过)。readthedocs 显示非常简洁,渲染出来的代码块也非常漂亮,在 Chrome 下按 Command + + 就可以放大,效果很好。左侧的可以嵌套的目录正好可以做一个大纲展示。readthedocs 真是简洁又实用,我翻译的一本书也放在上面,效果可以作为参考。

这种方式的一个额外的好处是,随便找一个文件托管服务,比如 S3 bucket 或者 github pages 就可以,然后随便一台电脑就可以打开访问演示。而且这样放在网上访问方便,不会像 .ppt 文件不兼容新版啦等问题,作者如果更改可以一下子同步上去,PPT 这种文件就像泼出去的水,发给别人就再也更新不了了(当然也可以“最终版” “再也不改了” “最后版本” “最最后版本”发给别人哈哈)。缺点就是要学习 sphinx 学习成本可能会高一些。

4 Racket SlideShow

Racket 套件

Racket 套件

这个是我偶然发现的,没有实际用过。安装 Racket 之后竟然出现这么多套件,有游戏,还有一个 SlideShow???看了一下,竟然是用 Racket 代码来写 PPT…… 听说貌似还有不少用户。

Racket源代码

好吧,Lisp 程序员的世界我有点不懂……

另外再赠送一个呗。推荐一个画图的工具,Graphviz。这个有 Python 的封装,可以使用在项目中,也可以直接手写文件画,还蛮好看的。这里有个画 Python 继承关系的例子。可以看下。

miloyip老师画的

我最初知道这个还可以拿来直接当作图工具用是看了 miloyip 老师的推荐,有兴趣可以看一下这个回答:Mac 上最好用的流程图软件是什么?

程序员如何写PPT”已经有3条评论

Leave a comment

电子邮件地址不会被公开。 必填项已用*标注