跳转至

Slides 终端演示工具

为什么要学 Slides

Slides 是一个终端中的演示工具,用 Go 编写,由 Charm 团队开发。你只需要编写 Markdown 文件,Slides 就能将其渲染为美观的终端幻灯片。对于技术分享、命令行演示和终端爱好者来说,Slides 提供了一种简洁酷炫的演示方式,不需要 PowerPoint 或 Google Slides。


核心概念

概念白话解释用途
Slide幻灯片--- 分隔的 Markdown 段落
Theme主题颜色和样式配置
Code Execution代码执行在演示中实时运行代码
Presenter Mode演讲者模式显示备注和进度

安装配置

# macOS
brew install slides

# Go
go install github.com/maaslalani/slides@latest

快速上手

创建幻灯片

# slides.md

# 我的演示

作者:张三
日期:2024-12-01

---

## 第一页:介绍

- Slides 是终端演示工具
- 只需要 Markdown
- 支持代码高亮

---

## 代码示例

~~~python
def hello():
    print("Hello from Slides!")

hello()
~~~

---

## 表格

| 工具 | 语言 | 用途 |
|------|------|------|
| Slides | Go | 终端演示 |
| Glow | Go | Markdown 阅读 |
| VHS | Go | 终端录制 |

---

# 谢谢!

> "在终端中演示是一种艺术。"

运行演示

slides slides.md

# 快捷键:
# →/Space/Enter  下一页
# ←/Backspace    上一页
# q/Ctrl+C       退出
# 1-9            跳转到第N页

进阶用法

前言配置

---
theme: dark
author: 张三
date: 2024-12-01
paging: "Slide %d / %d"
---

# 第一页内容

代码执行

## 实时代码演示

~~~python exec
import sys
print(f"Python {sys.version}")
print("在演示中执行代码!")
~~~

按 Ctrl+E 执行上面的代码块

主题定制

// ~/.config/slides/theme.json
{
  "title": {
    "color": "#ff79c6",
    "bold": true
  },
  "text": {
    "color": "#f8f8f2"
  },
  "code": {
    "theme": "dracula"
  },
  "table": {
    "border_color": "#44475a"
  }
}

常见问题

Q: 如何显示图片?

终端演示中无法直接显示图片。可以使用 ASCII art 替代,或在支持图形协议的终端中尝试。

Q: 与 reveal.js 的区别?

  • Slides:纯终端、极简、适合技术演示
  • reveal.js:浏览器中、支持丰富的 HTML/CSS 效果

参考资源

  • GitHub:https://github.com/maaslalani/slides
  • Charm 生态:https://charm.sh/