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 字元且不截斷,並在相容終端中支援影像渲染。
  • 可擴展:內建外掛系統,支援自訂解析與渲染邏輯。
  • 剪貼簿整合:可自動將最終程式碼區塊複製到系統剪貼簿。

相關

  • 專案
  • 專案
  • 專案
  • 專案