终端小说阅读器,基于 Go + Bubble Tea 构建,提供轻量、可扩展的命令行阅读体验。
- 书架选择 — 启动时扫描指定目录,展示小说列表供选择
- 自动分页 — 根据终端窗口大小自动分页,支持中文等宽字符
- 章节目录 — 按
p打开右侧章节目录浮层,选择章节跳转 - 章节排版 — 每章自动另起一页,章节标题颜色与正文区分
- 阅读进度 — 退出时自动保存位置,重新打开恢复到上次阅读处
- 键盘导航 —
j/k、方向键、空格翻页,g/G首尾跳转 - 返回书架 — 按
esc返回书架选择其他小说
| 按键 | 功能 |
|---|---|
j / ↓ / 空格 / → |
下一页 |
k / ↑ / ← |
上一页 |
g / Home |
跳到首页 |
G / End |
跳到末页 |
p |
打开/关闭章节目录 |
esc |
返回书架 |
q / Ctrl+C |
退出 |
.
├── cmd/novel-cli/ # 程序入口
├── internal/app/ # 启动与装配逻辑
├── internal/book/ # 小说加载与章节解析
├── internal/progress/ # 阅读进度持久化
├── internal/reader/ # 阅读器状态、分页与界面渲染
├── internal/selector/ # 书架选择界面
├── novel/ # 本地小说文件目录
├── Makefile
├── go.mod
└── go.sum
如果你没有代码基础,只需下载项目中的 bin/ 文件夹即可,其他代码文件不需要。
将 .txt 格式的小说文件放入一个文件夹,例如:
小说/
├── 斗破苍穹.txt
├── 凡人修仙传.txt
└── 遮天.txt
- macOS:打开"终端"应用(在"应用程序 → 实用工具"中)
- Windows:打开"命令提示符"或"PowerShell"
# 进入 bin 目录(根据你的实际路径修改)
cd ~/Desktop/novel-cli/bin
# 方式一:指定小说文件夹,进入书架选择
./novel-cli ~/Desktop/小说/
# 方式二:直接打开某本书
./novel-cli ~/Desktop/小说/斗破苍穹.txt
# 方式三:不传参数,扫描当前目录下的 novel/ 文件夹
./novel-cli提示:路径中的
~代表你的用户目录。也可以把文件夹直接拖到终端窗口,自动填入路径。
# 直接运行(默认扫描 novel/ 目录)
make run
# 编译后运行
make build
./bin/novel-cli
# 指定文件夹
./bin/novel-cli /path/to/小说目录/
# 指定文件
./bin/novel-cli /path/to/某本书.txtmake build # 编译
make run # 运行
make fmt # 格式化
make lint # 代码检查
make clean # 清理进度自动保存在小说文件同目录下,文件名为 <书名>.progress(JSON 格式)。