vhs 是一个命令行录制工具,用于将终端的操作过程录制成视频文件。是由 Charmbracelet 团队使用 Go 开发的,首个版本发布于 2022 年 10 月。开源不到一个月有接近 8k 的 star。
比起其他的终端录制应用,vhs能在如此短的时间内获取大量star的原因是其提供了一种声明式录制脚本的功能,您可以编写自己的录制脚本,脚本可以自动在模拟终端输入与录制,无需与终端交互。搭配 github action 使用可以定时自动录制和更新,应用于集成测试和演示 CLI 工具。
注意:vhs 依赖 ttyd 和 ffmepg,使用前请确保已正确安装 ttyd 和 ffmepg (使用x vhs
会帮您把 ttyd 和 ffmepg 一并下载与安装)。
使用 x vhs
即可自动下载并使用
x-cmd 提供1分钟教程,其中包含了 vhs 命令常用功能的 demo 示例,可以帮你快速上手 vhs 。
使用案例:
# 以 tape 格式记录终端操作
x vhs record
# 创建新的 tape 文件(默认内容为官方 'Welcome to VHS!' 示例)
x vhs new new_file.tape
# 由录制脚本(tape 文件)生成 gif 文件
x vhs new_file.tape
vhs 提供模声明式录制脚本。录制 vhs 会自动编写录制脚本,脚本就可以根据生成的内容在模拟终端中模拟按键输入,实现自动录制。具体可以阅读vhs。
type
字段是模拟终端打字,Backspace
字段是模拟按退格键等。x termsvg
即可使用