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

相关文章

Git中恢复已删除分支的几种方法

《Git中恢复已删除分支的几种方法》:本文主要介绍在Git中恢复已删除分支的几种方法,包括查找提交记录、恢复分支、推送恢复的分支等步骤,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录1. 恢复本地删除的分支场景方法2. 恢复远程删除的分支场景方法3. 恢复未推送的本地删除分支场景方法4. 恢复

Mycat搭建分库分表方式

《Mycat搭建分库分表方式》文章介绍了如何使用分库分表架构来解决单表数据量过大带来的性能和存储容量限制的问题,通过在一对主从复制节点上配置数据源,并使用分片算法将数据分配到不同的数据库表中,可以有效... 目录分库分表解决的问题分库分表架构添加数据验证结果 总结分库分表解决的问题单表数据量过大带来的性能

Java汇编源码如何查看环境搭建

《Java汇编源码如何查看环境搭建》:本文主要介绍如何在IntelliJIDEA开发环境中搭建字节码和汇编环境,以便更好地进行代码调优和JVM学习,首先,介绍了如何配置IntelliJIDEA以方... 目录一、简介二、在IDEA开发环境中搭建汇编环境2.1 在IDEA中搭建字节码查看环境2.1.1 搭建步

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

bat脚本启动git bash窗口,并执行命令方式

《bat脚本启动gitbash窗口,并执行命令方式》本文介绍了如何在Windows服务器上使用cmd启动jar包时出现乱码的问题,并提供了解决方法——使用GitBash窗口启动并设置编码,通过编写s... 目录一、简介二、使用说明2.1 start.BAT脚本2.2 参数说明2.3 效果总结一、简介某些情

使用Vue.js报错:ReferenceError: “Vue is not defined“ 的原因与解决方案

《使用Vue.js报错:ReferenceError:“Vueisnotdefined“的原因与解决方案》在前端开发中,ReferenceError:Vueisnotdefined是一个常见... 目录一、错误描述二、错误成因分析三、解决方案1. 检查 vue.js 的引入方式2. 验证 npm 安装3.

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

JS常用组件收集

收集了一些平时遇到的前端比较优秀的组件,方便以后开发的时候查找!!! 函数工具: Lodash 页面固定: stickUp、jQuery.Pin 轮播: unslider、swiper 开关: switch 复选框: icheck 气泡: grumble 隐藏元素: Headroom

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS