我用 Python TUI 替换了 `man` 命令——而且真的很有用
发布: (2026年2月22日 GMT+8 14:07)
4 分钟阅读
原文: Dev.to
Source: Dev.to
它的外观

它的不同之处
| 功能 | man | smartman |
|---|---|---|
| 语法高亮 | ❌ | ✅ |
| 交互式侧边栏(跳转章节) | ❌ | ✅ |
| 顶部快速示例 | ❌ | ✅ |
| AI 驱动的自然语言解释 | ❌ | ✅ |
| 主题(Dracula、Catppuccin、Nord…) | ❌ | ✅ |
我真正自豪的功能
⚡ 快速示例画廊
man 手册最让人痛苦的地方在于有用的示例总是埋在底部。SmartMan 将最常见的使用模式以交互式卡片的形式 直接展示在每页的顶部。无需滚动,也不必在手册中 grep 来寻找所需内容。
🤖 AI 解释(通过 Groq)
盯着复杂的选项描述仍然一头雾水?运行:
smartman --explain awk
它会调用 Groq API(响应时间亚秒,提供免费层),为你提供一段简明的英文概述——再也不用在凌晨 2 点解读正式的规范语言了。
📂 交互式侧边栏
使用键盘快捷键即时跳转章节:
| 键 | 操作 |
|---|---|
n | 跳转到 NAME |
s | 跳转到 SYNOPSIS |
d | 跳转到 DESCRIPTION |
o | 跳转到 OPTIONS |
e | 跳转到 EXAMPLES |
q | 退出 |
🎨 主题
基于 YAML 的主题系统,你可以匹配终端的任何美学:
- Default — 现代深蓝
- Dracula — 经典开发者风格
- Catppuccin — 柔和摩卡
- Nord — 冷色调霜蓝
- Monokai — 高对比度活力
示例:
smartman --theme dracula grep
一行安装
curl -sSL https://raw.githubusercontent.com/ambaskaryash/smartman-cli/main/install.sh | bash
或者如果你更喜欢 pipx:
pipx install smartman
然后,为了让它成为你的 永久默认 man 命令,在 .bashrc 或 .zshrc 中加入:
alias man='smartman'
现在每次输入 man 时,都会自动获得完整的 SmartMan 体验。
技术栈
- Textual — 让所有交互式 UI 成为可能的 TUI 框架。
- Rich — 提供语法高亮和样式渲染。
- Groq API — 用于 AI 解释;因其几乎为零的延迟而被选中。
- Typer — 零样板的干净 CLI 接口。
接下来计划
- 对所有已安装的 man 页面进行模糊搜索
- 为常用 man 页面添加书签功能
-
--tldr模式(更短的社区来源摘要) - 导出为 PDF
试一试
完整源码在 GitHub 上:
👉 github.com/ambaskaryash/smartman-cli
如果这能为你省下哪怕几秒钟的翻看手册时间,请在仓库点个 ⭐——这能帮助其他 Linux 用户也发现它。非常欢迎贡献,尤其是新的主题。添加主题只需把一个 YAML 文件放入 smartman/themes/ 即可。
默认的 man 命令最让你烦恼的是什么? 在评论区告诉我——我正在积极寻找下一个要构建的功能。