Typera+Node.js+Git搭建托管于远端的写作平台(GitBook)

2023-11-22 02:38

本文主要是介绍Typera+Node.js+Git搭建托管于远端的写作平台(GitBook),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 0x00 文章内容
  • 0x01 环境准备
          • 1. Typera
          • 2. Node.js
          • 3. Git
  • 0x02 GitBook闪亮登场
          • 1. 安装GitBook
          • 2. 初始化GitBook
          • 3. 生产GitBook目录结构
          • 4. 启动GitBook服务
          • 5. 构建GitBook书籍
  • 0x03 与Git完美配合
          • 1. 提交文档到码云
  • 0xFF 总结

0x00 文章内容

  1. 环境准备
  2. GitBook闪亮登场

一直在寻找一个比较良好的MarkDown写作平台,几乎把市面上所有的产品都试过了,但还是决定这样解决,原因如下:

  1. Typera是一个非常不错的MarkDown编辑器,但是复制到它上面的图片只能存放在本地,无法同步到云端,如果需要将你的MarkDown文本复制到其他平台,则需要将图片一一复制一遍,过程非常繁琐。
  2. 想要一个随时随地都可以远程开发的环境

主要的问题就是:真的有点复杂!

0x01 环境准备

1. Typera

a. 下载与安装(=> 链接跳转)
b. 配置,因为要配置到Git,所以准备将图片配置成保存在assets文件夹,这样比较方便以后利用
在这里插入图片描述

2. Node.js

a. 请参考文章:

  • Node版本管理工具nvm的安装与使用(windows)
3. Git

a. Git的安装与配置(Mac版本)=> 链接跳转

0x02 GitBook闪亮登场

1. 安装GitBook

a. 全局安装GitBook(可以去看一下目录里有没有下载到东西)
npm install -g gitbook-cli
在这里插入图片描述

解释:Node.js默认安装了npm(node包管理工具),此处不用单独安装npm,执行以下命令安装GitBook。

2. 初始化GitBook

a. 新建一个文件夹,作为一本笔记本的主目录,之后将会有一篇又一篇的文章,此处我的文件夹为:test-book
mkdir test-book
在这里插入图片描述
b. 接着初始化GitBook,进入test-book文件夹,执行:
gitbook init
在这里插入图片描述
遇到问题:此时可能会遇到问题,一直卡在这里。

需要注意的点

  1. 注意cmd命令行要使用“管理员身份打开”,提升其管理员权限。
    在这里插入图片描述
  2. 查资料说版本问题,于是我卸载了默认的3.2.3的版本:
    gitbook uninstall 3.2.3
    如果提示不需要卸载,则不管。
    下载一个3.0.0版本:
    gitbook fetch 3.0.0
    在这里插入图片描述
    等了几分钟之后,就提示安装完成了,此时再重新初始化就可以了:
    gitbook init
    在这里插入图片描述
    解释:完成后,test-book文件夹下会多了两个文件 =>
    README.md:书籍的介绍可写在此文件中
    SUMMARY.md:书籍的目录结构可写在此文件中
    在这里插入图片描述
3. 生产GitBook目录结构

a. 编辑SUMMARY.md文件,此时就可以使用Typora了,将内容修改为:

# 目录* [前言](README.md)
* [第一章 全栈工程师之路](全栈工程师之路/README.md)* [1节 前端](全栈工程师之路/前端.md)* [2节 后端](全栈工程师之路/后端.md)* [3节 运维](全栈工程师之路/运维.md)* [4UI设计](全栈工程师之路/UI设计.md)
* [第二章 大数据](大数据/README.md)
* [第三章 云计算](云计算/README.md)
* [第四章 人工智能](人工智能/README.md)

b. 接着生成目录结构,在test-book文件夹中再次执行命令:
gitbook init
在这里插入图片描述
c. 返回Typora,发现已经生成了目录结构
在这里插入图片描述
解释:GitBook会根据SUMMARY.md文件中描述的目录和文件生成目录结构,文件也会生成,如果之前没有创建的话。

4. 启动GitBook服务

a. 启动预览服务
gitbook serve

提示错误:

Error: ENOENT: no such file or directory, stat 'C:\Users\Administrator\Documents\01shao\test-book\_book\gitbook\gitbook-plugin-lunr\lunr.min.js'

问题解决参考:
gibook工具常见的问题记录

修改下面的问题件~指的是用户目录
~\.gitbook\versions\3.2.3\lib\output\website\copyPluginAssets.js中的112行内容
原始内容 ,主要是confirm的true需要修改为false
修改后:
在这里插入图片描述
再重新执行:
gitbook serve
在这里插入图片描述
提示“Serving book on http://localhost:4000”,即默认是启动在localhost:4000,此时用浏览器打开此url则可看到结果:
在这里插入图片描述

5. 构建GitBook书籍

a. 构建书籍
gitbook build

  1. 当然也不用经常构建,此步骤其实就是想要打包到其他地方执行了才执行,如果有编程基础的话应该是比较容易理解的。
  2. 你可以像发布前端项目一样将我们的项目发布出去。

0x03 与Git完美配合

1. 提交文档到码云

a. 使用Git将代码提交到码云 => 链接跳转

我们可以将编辑好的文件,上传到云端,实现远端开发,此过程不再累赘,请参考一些Git相关的内容。

0xFF 总结

  1. 其他的操作总结
  • build可以指定书籍的路径以及输出路径:
    gitbook build [书籍路径] [输出路径]

  • serve 命令也可以指定端口:
    gitbook serve --port 4044

  • 生成不同格式的电子书:
    gitbook 格式 [书籍路径] [输出路径]
    如:
    gitbook pdf ./ ./mybook.pdf
    gitbook epub ./ ./mybook.epub
    gitbook mobi ./ ./mybook.mobi

  1. 最后说句心里话,体验了下后,感觉这东西也没什么用,可能对于目录的结构有那么一点点用,其他的也没什么。

参考文章:

  • GitBook 从懵逼到入门
  • gitbook安装与使用之windows下搭建gitbook平台
  • 记坑爹的服务器端gitbook安装过程-太坑了
  • gitbook安装中installing gitbook xxx 时间过长的问题

作者简介:邵奈一
全栈工程师、市场洞察者、专栏编辑
| 公众号 | 微信 | 微博 | CSDN | 简书 |

福利:
邵奈一的技术博客导航
邵奈一 原创不易,如转载请标明出处。


这篇关于Typera+Node.js+Git搭建托管于远端的写作平台(GitBook)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/406877

相关文章

在Android平台上实现消息推送功能

《在Android平台上实现消息推送功能》随着移动互联网应用的飞速发展,消息推送已成为移动应用中不可或缺的功能,在Android平台上,实现消息推送涉及到服务端的消息发送、客户端的消息接收、通知渠道(... 目录一、项目概述二、相关知识介绍2.1 消息推送的基本原理2.2 Firebase Cloud Me

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放

IDEA中Git版本回退的两种实现方案

《IDEA中Git版本回退的两种实现方案》作为开发者,代码版本回退是日常高频操作,IntelliJIDEA集成了强大的Git工具链,但面对reset和revert两种核心回退方案,许多开发者仍存在选择... 目录一、版本回退前置知识二、Reset方案:整体改写历史1、IDEA图形化操作(推荐)1.1、查看提

nvm如何切换与管理node版本

《nvm如何切换与管理node版本》:本文主要介绍nvm如何切换与管理node版本问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录nvm切换与管理node版本nvm安装nvm常用命令总结nvm切换与管理node版本nvm适用于多项目同时开发,然后项目适配no

使用DeepSeek搭建个人知识库(在笔记本电脑上)

《使用DeepSeek搭建个人知识库(在笔记本电脑上)》本文介绍了如何在笔记本电脑上使用DeepSeek和开源工具搭建个人知识库,通过安装DeepSeek和RAGFlow,并使用CherryStudi... 目录部署环境软件清单安装DeepSeek安装Cherry Studio安装RAGFlow设置知识库总

Linux搭建Mysql主从同步的教程

《Linux搭建Mysql主从同步的教程》:本文主要介绍Linux搭建Mysql主从同步的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux搭建mysql主从同步1.启动mysql服务2.修改Mysql主库配置文件/etc/my.cnf3.重启主库my

国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)

《国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)》本文给大家利用deepseek模型搭建私有知识问答库的详细步骤和遇到的问题及解决办法,感兴趣的朋友一起看看吧... 目录1. 第1步大家在安装完ollama后,需要到系统环境变量中添加两个变量2. 第3步 “在cmd中

Git如何修改已提交人的用户名和邮箱

《Git如何修改已提交人的用户名和邮箱》文章介绍了如何修改Git已提交人的用户名和邮箱,包括注意事项和具体步骤,确保操作正确无误... 目录git修改已提交人的用户名和邮箱前言第一步第二步总结git修改已提交人的用户名和邮箱前言需注意以下两点内容:需要在顶层目录下(php就是 .git 文件夹所在的目