Skip to content

PGwind/novel-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

novel-cli

终端小说阅读器,基于 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 目录)

如果你没有代码基础,只需下载项目中的 bin/ 文件夹即可,其他代码文件不需要。

1. 准备小说文件

.txt 格式的小说文件放入一个文件夹,例如:

小说/
├── 斗破苍穹.txt
├── 凡人修仙传.txt
└── 遮天.txt

2. 打开终端

  • macOS:打开"终端"应用(在"应用程序 → 实用工具"中)
  • Windows:打开"命令提示符"或"PowerShell"

3. 运行程序

# 进入 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/某本书.txt

常用命令

make build   # 编译
make run     # 运行
make fmt     # 格式化
make lint    # 代码检查
make clean   # 清理

阅读进度

进度自动保存在小说文件同目录下,文件名为 <书名>.progress(JSON 格式)。

About

一个轻量的 Go 终端阅读器项目,专注小说阅读体验与可扩展书源架构。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors