day50-dev/streamdown
Render markdown in the terminal streaming
解决的问题
Streamdown 解决了终端 Markdown 渲染器会‘劫持’屏幕进入全屏模式的问题。它提供了一种实时美化 LLM 及其他来源的 Markdown 输出的方法,而无需占据整个终端,使用户能够保持完整的键盘交互能力(如方向键和控制序列)。
工作原理
它既是一个快速、符合标准的库,也是一个命令行界面(CLI)。它可以通过标准管道、文件,或使用 --exec 标志作为其他程序的包装器来处理 Markdown,同时保持正确的 I/O 处理。它使用插件系统扩展其解析器和渲染器(例如支持 LaTeX 数学公式),并支持现代终端功能,如 OSC 8 超链接和 OSC 52 剪贴板集成。
适用人群
希望在终端中获得流畅、实时的 Markdown 渲染体验的开发者和 AI 高级用户,特别适用于 AI 工作流和 LLM 输出,同时不牺牲终端控制权。
特性亮点
- 实时流式渲染:在生成时即时渲染 Markdown,非常适合 LLM 输出。
- 非侵入式:不占据整个屏幕;保持标准终端行为。
- 干净的代码复制:确保代码块可干净复制,不会插入额外换行。
- 广泛支持:支持 CJK 字符且不截断,并在兼容终端中支持图像渲染。
- 可扩展:内置插件系统,支持自定义解析和渲染逻辑。
- 剪贴板集成:可自动将最终代码块复制到系统剪贴板。
相关
- 项目
- 项目
- 项目
- 项目