跳转至

Glow 终端 Markdown 阅读器

为什么要学 Glow

Glow 是一个终端中的 Markdown 阅读器,用 Go 编写。它能在终端中渲染美观的 Markdown 文档,支持语法高亮、链接、表格、图片占位符等。Glow 还提供了 stash 功能,可以收藏和管理 Markdown 文件。对于在终端中阅读 README、文档和笔记来说,Glow 提供了最好的阅读体验。


核心概念

概念白话解释用途
Render渲染将 Markdown 转为终端美化输出
Pager分页器长文档分页浏览
Stash收藏保存和管理常看的文档
Style样式Markdown 渲染主题

安装配置

# macOS
brew install glow

# Go
go install github.com/charmbracelet/glow@latest

# Ubuntu
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://repo.charm.sh/apt/gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/charm.gpg
echo "deb [signed-by=/etc/apt/keyrings/charm.gpg] https://repo.charm.sh/apt/ * *" | sudo tee /etc/apt/sources.list.d/charm.list
sudo apt update && sudo apt install glow

快速上手

# 渲染文件
glow README.md

# 渲染 URL
glow https://raw.githubusercontent.com/user/repo/main/README.md

# 从管道读取
cat README.md | glow -

# 分页浏览
glow -p README.md

# 指定宽度
glow -w 80 README.md

# 使用 less 风格分页
glow -p README.md
# 快捷键:j/k 上下,q 退出,/ 搜索

# 浏览目录下所有 Markdown
glow ./docs/

样式选择

# 暗色主题(默认)
glow -s dark README.md

# 亮色主题
glow -s light README.md

# Dracula 主题
glow -s dracula README.md

# 无样式(原始 Markdown 美化)
glow -s notty README.md

进阶用法

Stash 功能

# 启动交互式界面
glow

# 在界面中:
# Tab      切换 stash/files 面板
# Enter    打开文件
# s        收藏到 stash
# x        从 stash 移除
# /        搜索
# q        退出

配置文件

# ~/.config/glow/glow.yml
style: "dark"
local: false
mouse: true
pager: true
width: 100

与其他工具集成

# 作为 git commit message 预览
git log --format=%B -1 | glow -

# 预览 API 文档
curl -s https://api.example.com/docs.md | glow -

# 在 Yazi 文件管理器中预览
# yazi.toml 中配置 Markdown 预览器为 glow

# 在脚本中生成格式化输出
echo "# 部署报告\n\n- 状态: **成功**\n- 时间: $(date)" | glow -

常见问题

Q: 终端中图片怎么显示?

Glow 不能直接显示图片,但会显示图片的 alt 文本和链接。在支持图形协议的终端(如 Kitty)中可以使用其他工具。

Q: 中文显示宽度不对?

确保终端字体支持中文且设置了正确的区域(export LANG=zh_CN.UTF-8)。使用 -w 参数手动设置宽度。

Q: 与 bat 显示 Markdown 有什么不同?

  • Glow:渲染 Markdown(标题加粗、列表有符号、表格对齐)
  • bat:显示 Markdown 源码(带语法高亮)

参考资源

  • GitHub:https://github.com/charmbracelet/glow
  • Charm:https://charm.sh/
  • Glamour(渲染引擎):https://github.com/charmbracelet/glamour