TRNovel:一个专为小说爱好者打造的终端阅读器

2,070 阅读4分钟

TRNovel (Terminal Reader for Novel) 是一个专为小说爱好者设计的终端阅读器。

NPM Version NPM Downloads Crates.io Version Crates.io Total Downloads

前言

两个月前的一个慵懒周末,我正躺在沙发里沉浸在番茄小说的世界中。突然,一个念头冒了出来:要是有个更顺手的阅读工具该多好啊!这个想法就像一颗种子,在我心里悄悄扎了根。于是,我就想,干嘛不自己动手做个本地小说阅读器呢?这样不仅自己用着爽,还能和朋友们分享,TRNovel 就这么诞生了。

当我把初版拿给朋友们看的时候,他们给了我不少建议,比如能不能读网络小说?这些建议就像是给我打了鸡血,让我有了继续改进的动力。我参考了一些其他项目的点子,特别是any-reader里的书源解析技术,让TRNovel不仅能对付API格式的书源,还能啃得动网页上的HTML内容,这样网上的小说也能轻松读到了。

但我还是觉得不够好。为了让更多人能方便地用上TRNovel,我还学了tauri脚手架那一套,现在大家只需要通过npm就能快速安装应用,简单多了。经过一轮又一轮的调整,TRNovel已经到了0.5.1版本,功能也越来越多了。

现在,我决定把TRNovel开源,希望它能为喜欢读小说的朋友们提供更好的体验。我也特别期待更多的开发者能加入我们,一起让TRNovel变得更好玩、更强大。

简介

TRNovel 是一款基于终端的小说阅读应用程序,由 Rust 语言构建,并采用了 Ratatui 库来提供用户界面。它兼容 Windows、Linux 和 MacOS 操作系统,旨在为用户提供流畅的小说阅读体验。

特性

TRNovel 提供了以下功能:

  • 支持本地 .txt 格式的小说文件。
  • 支持网络小说,通过集成特定书源获取内容。
  • 自动保存阅读历史记录,方便您继续未完成的故事。
  • 提供个性化主题设置,定制您的阅读环境。

请注意,TRNovel 的网络小说功能与 Legado 的书源并不完全兼容。

安装指南

根据您的开发环境,您可以选择以下任意一种方式来安装 TRNovel:

使用 Node.js 环境安装

若您已安装 Node.js 环境,可以通过 npm 全局安装 TRNovel:

npm install -g @trnovel/trnovel

使用 Rust 环境安装

如果您有 Rust 工具链(包括 cargo),可以直接通过 Cargo 安装 TRNovel:

cargo install trnovel

下载预编译二进制文件

对于没有 Node.js 或 Rust 环境的用户,可以从 Releases 页面下载适合您操作系统的最新版本的可执行文件。请确保将下载的文件路径添加到您的环境变量中以便全局调用。

使用说明

安装完成后,您可以直接在命令行中输入 trnovel 来启动应用。如果您是通过 npm或者cargo安装的也可以使用命令别名trn来启动应用。

初次使用时,建议您先查看帮助信息以熟悉基本操作:trnovel-help

本地阅读

TRNovel 支持读取本地存储的小说文本文件(.txt 格式)。要开始阅读本地文件,请进入 TRNovel 并按下 s 键,然后按照提示输入或选择您想要打开的文件路径。

查看快捷键信息

您可以在每个页面按i键,查看该页面可用的快捷键信息。

网络阅读

对于网络上的小说资源,TRNovel 提供了书源解析的能力,允许您在线阅读最新的章节内容。要使用此功能,您首先需要导入书源。按s键,然后输入书源的本地地址或者URL,接着选择您想要导入的书源即可。

历史记录

历史记录会自动保存,您可以在历史记录页面按d键删除历史记录。

主题设置

您可以在主题设置页面修改主题颜色。 设置完成后,需要重新启动TRNovel才能生效。

清理缓存

TRNovel会在HOME目录或者命令所在目录下创建一个.novel文件夹, 用于存放缓存文件。您可以使用以下命令快速清理缓存。

trnovel clear

如果您想要重置主题,或者更高级的自定义主题,可以删除或修改.novel/theme.json文件。

快速模式,接着上一次阅读的位置继续阅读

您可以使用以下命令进入快速模式,接着上一次阅读的位置继续阅读。

trnovel quick

注意:快速模式需要有一个历史记录才能使用。

最后

项目地址:github.com/yexiyue/TRN…

感谢您的使用和支持!如果您在使用 TRNovel 过程中遇到任何问题或有任何建议,欢迎随时向我反馈。我将竭诚为您提供帮助和支持。