基於終端的演示工具受到關注:Presenterm 提供具有高階功能的 Markdown 幻燈片工具

BigGo Editorial Team
基於終端的演示工具受到關注:Presenterm 提供具有高階功能的 Markdown 幻燈片工具

基於終端的演示工具正在開發者和技術演示者中獲得越來越多的關注,其中 presenterm 作為一個值得注意的解決方案,可以建立直接在終端中執行的 Markdown 格式的幻燈片。該工具引發了關於基於終端的演示相比傳統幻燈片應用程式的優勢討論,特別是對於涉及程式碼示例的技術演示。

終端字型大小調整協議引發討論

在基於終端的演示中實現更大字型的方法已成為使用者關注的技術點。Kitty 終端透過其自定義協議(文件位於 kovidgoyal.net/kitty/text-sizing-protocol/)實現字型大小調整的方法引起了特別關注。一些使用者指出,雖然像 Xterm 這樣的終端長期以來透過 DEC 協議命令支援雙高和雙寬文字的文字大小調整,但 Kitty 實現了自己的方法。這突顯了終端標準的分散性,一位評論者將 TTY 技術描述為充滿了神秘/遺留/事實上的標準。對這些功能的支援在不同終端模擬器之間差異顯著,Kitty、iTerm2 和 Wezterm 為 presenterm 的視覺功能提供了強大支援,而基於 VTE 的終端則面臨相容性限制。

無縫程式碼演示推動採用

從社群討論中可以看出,基於終端的演示的一個引人注目的優勢是幻燈片和即時程式碼演示之間的無縫過渡。已經在工作演示中採用 presenterm 的使用者強調了演示內容和基於終端的開發環境之間的流暢工作流程。

「能夠從幻燈片無縫過渡到 Vim 中的示例程式碼真的非常好。不需要同時處理多個視窗,只需使用終端標籤,甚至可以使用 ctrl+z/fg。而且看起來真的很酷。」

這種整合對於需要在演示過程中展示工作程式碼示例的技術演示者特別有價值。演示者可以留在終端環境中,使用熟悉的命令在內容之間導航,而不是在不同的應用程式之間切換。一些使用者甚至使用像 Vim 這樣的工具開發了自己的基於終端的演示工作流程,其中標籤代表幻燈片,這表明對此類功能的需求。

與基於網路的 Markdown 演示工具的比較

社群成員經常將 presenterm 與基於網路的 Markdown 演示工具如 Slidev 和 Marp 進行比較。雖然這些替代方案提供類似的 Markdown 到演示功能,但它們在瀏覽器而非終端中執行。討論揭示了不同的使用場景,基於終端的工具主要吸引那些偏好以終端為中心的工作流程並需要演示命令列工具的使用者。列布局和選擇性程式碼高亮被指出是 presenterm 相比一些基於網路的替代方案的優勢,儘管一些使用者報告與更成熟的演示平臺相比在佈局自定義方面存在挑戰。

支援 Presenterm 良好的終端模擬器

  • Kitty(自 v0.40.0 版本起支援文字大小調整協議)
  • iTerm2
  • Wezterm

Presenterm 主要功能

  • 基於 Markdown 的幻燈片
  • 支援圖片和動態 GIF
  • 可自定義主題
  • 多種程式語言的程式碼高亮
  • 選擇性/動態程式碼高亮
  • 列布局
  • Mermaid 圖表渲染
  • LaTeX 和 typst 公式渲染
  • 程式碼片段執行
  • PDF 匯出功能
  • 演講者筆記

高階功能的依賴挑戰

嘗試實現 presenterm 的一些高階功能的使用者遇到了依賴挑戰,特別是在 mermaid 圖表渲染方面。透過 npm 安裝 mermaid-cli 的要求被確定為想要避免 Node.js 生態系統的使用者的潛在障礙。這突顯了基於終端的工具的一個常見挑戰,即在提供豐富的視覺功能的同時保持輕量級的特性。presenterm 開發者承認了這一限制,指出 mermaid 基於瀏覽器的渲染引擎使得在沒有這些依賴的情況下實現變得困難。

像 presenterm 這樣的基於終端的演示工具代表了技術內容展示方式的一個有趣演變,特別是對於熟悉命令列介面的受眾。雖然它們可能不會在所有用例中替代傳統的演示軟體,但它們為程式碼密集型演示和示範提供了獨特的優勢,反映了技術使用者對以終端為中心的工作流程的日益增長的興趣。

參考:presenterm - 一個 markdown 終端幻燈片工具