从0到1,用Rust轻松制作电子书

我之前简单提到过用 Rust 做电子书,今天分享下如何用Rust做电子书。制作电子书其实用途广泛,不仅可以用于技术文档(对技术人来说非常方便),也可以制作用户手册、笔记、教程等,还可以应用于文学创作。

如果你有想法写小说或者做知识付费,电子书也是一个不错的切入点。特别是知识付费领域,通过小范围试水电子书,收集读者反馈,进一步打磨内容,最后也可以出版成书。

好了,有点扯远了,我们重点先说下怎么用Rust快速做电子书吧,简单方便几分钟就可以搭起来。

1. 环境准备

我们准备用Rust来创建电子书,首先,需要安装有Rust的环境,Rust环境安装也比较简单打开官方地址,复制安装命令安装即可。

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

其次,需要对Markdown语法了解,如果不了解的可以看下,强烈推荐所有人来学。很多精美的排版和插图都可以通过md语法来实现,现在更有md的编辑器,稍微了解配合编辑器就能如虎添翼了。

如果有不熟悉markdown可以到这个网站来学习了解下,https://www.markdownguide.org/ ,也可以其他中文网站了解。

2. 安装使用

介绍下我们做电子书的主角mdBook,一款由rust实现的开源软件,可以进行文档生成,搜索,语法高亮,生产的电子书可以支持在PC、和移动设备打开使用。

通过cargo来安装

cargo install mdbook

安装成功,可以进行创建

mdbook init my-first-book

创建过程中可以起名字,创建完成后到该文件目录下

cd my-first-book
mdbook serve --open

打开地址http://localhost:3000/ ,可以看到创建的电子书模板已经打开了,尽管内容还是空的,但电子书的结构已经有了,左边导航,右边文章内容,以及搜索框。

剩下就是我们写电子书的内容了。

3. 写电子书内容

在创建的电子书工程下,会看到src文件目录、book.toml配置文件、book目录,我们先关注电子书的内容src目录

├── SUMMARY.md
└── chapter_1.md

SUMMARY.md 里打开可以看到就是左侧的导航配置,比如对应的章节配置在这个文件里,chapter_1.md就是对应的章节内容

# Summary
- [Chapter 1](./chapter_1.md)

可以对chapter_1.md进行内容写作,就可以形成对应的电子书的内容了。

比如这个我复制了个内容,修改了章节命名,然后重新刷新即可看到内容。

4. 部署

电子书制作完后,编译后会发现在book的目录下会有编译好的文件,可以通过GitHub Pages上这样完全可以免费,也可以支持远程别人打开和阅读。

这个是我之前部署的一个Rust精简笔记电子书:

回头再介绍下部署吧,有兴趣的也可以看官方文档,部署也比较简单,可以通过脚本结合来。

PS: 也欢迎大家评论和交流~ 更多文章也可关注微信公号:良技漫谈

相关推荐
檀越剑指大厂23 分钟前
【Python系列】Python中的`any`函数:检查“至少有一个”条件满足
开发语言·python
I_Am_Me_1 小时前
【JavaEE初阶】线程安全问题
开发语言·python
运维&陈同学1 小时前
【Elasticsearch05】企业级日志分析系统ELK之集群工作原理
运维·开发语言·后端·python·elasticsearch·自动化·jenkins·哈希算法
ZHOUPUYU2 小时前
最新 neo4j 5.26版本下载安装配置步骤【附安装包】
java·后端·jdk·nosql·数据库开发·neo4j·图形数据库
Q_19284999063 小时前
基于Spring Boot的找律师系统
java·spring boot·后端
ZVAyIVqt0UFji4 小时前
go-zero负载均衡实现原理
运维·开发语言·后端·golang·负载均衡
loop lee4 小时前
Nginx - 负载均衡及其配置(Balance)
java·开发语言·github
SomeB1oody5 小时前
【Rust自学】4.1. 所有权:栈内存 vs. 堆内存
开发语言·后端·rust
toto4125 小时前
线程安全与线程不安全
java·开发语言·安全
水木流年追梦5 小时前
【python因果库实战10】为何需要因果分析
开发语言·python