前言

在早些天看sec-wiki的时候,看到有同学做了一个ctf-wiki来介绍CTF,让CTF新手能够快速入门,做成了电子书的样子,放在github上面。页面精美、简洁,让人爱不惜手。

想着自己也能够做一下总结之类的,弄成一本小册子也是不错的,然后从中了解到了gitbook。之前玩过githubpage,自然也是明白gitbook的原理,markdown与静态页面的完美结合,不得不说markdown的出现确实大大提升了作者的写文效率,让人不用再关心样式的问题,专注于写作上面。

那么下面就记录一下自己对gitbook的一些使用与感触,与及从中遇到的坑。

安装并使用gitbook

gitbook的使用其实很简单,因为有很多大佬前辈都已经写过了相关的教程,我在参考了GitBook 简明教程官方文档,也算是对于gitbook有了大致的了解。

因为《GitBook简明教程》这篇教程似乎有了一定的年份,与现在的状况有一些出入。这里就说说变化了的地方,请注意本文的发表日期与当前的时间,有可能某些状况也已经发生了变化。

1, 私有书籍的变化。现在免费账户已经不能享受拥有一本私有电子书的优惠了

2, 插件的安装不需要全局安装,而是由gitbook统一管理

貌似是在早些时候的版本中,在本地预览gitbook的时候,需要用到哪个插件就要npm install 一下,现在不需要了,只需要在book.json中配置plugins里面填写好你需要的插件名称即可。在执行gitbook serve命令时,gitbook会自动检查当前环境是否包含有插件列表的插件,没有就会安装,方便了许多。至于插件在那里可以找到呢?gitbook有一个插件官网,你可以在上面搜索你想要的插件。



又或者到这里看看Gitbook 使用教程,扩展方面写的很好

3, 国内下载gitbook editor极慢,怎么解?

这无解啊!麻蛋,就六十多兆的东西,下了大半天都下载不下来,最后还是让我同学用某灯专业版下载下来的。我买了影梭的vpn根本没卵用,这里吐槽一下影梭的vpn是真的水,真的。如果要使用gitbook editor,那么请一定要最新的版本,低版本的gitbook editor会出现book.json load error的情况。这里提供windows最新版本7.0.12,有需要的同学可以下载

4, 关于book.json的一些问题

windows使用gitbook editor时,因为gitbook editor在本地并没有book.json文件,如果需要配置插件,需要手动创建book.json,并git上去。book.json的撰写应该是这样子的。

{
{
"author": "水泡泡",
"description": "水泡泡的testbook",
"extension": null,
"generator": "site",
"language": "zh-hans",
"isbn": "",
"links": {
"sharing": {
"all": null,
"facebook": null,
"google": null,
"twitter": null,
"weibo": null
},
"sidebar": {
"水泡泡的博客": "http://www.cnblogs.com/r00tuser/"
}
},
"output": null,
"pdf": {
"fontSize": 12,
"footerTemplate": null,
"headerTemplate": null,
"margin": {
"bottom": 36,
"left": 62,
"right": 62,
"top": 36
},
"pageNumbers": false,
"paperSize": "a4"
},
"plugins": [
"-lunr",
"-search",
"-highlight",
"prism",
"search-plus",
"theme-comscore",
"toggle-chapters",
"codeblock-filename",
"splitter",
"tbfed-pagefooter",
"anchor-navigation-ex",
"expandable-chapters-small",
"sectionx",
"disqus"
],
"pluginsConfig": {
"prism": {
"css": [
"prism-themes/themes/prism-base16-ateliersulphurpool.light.css"
]
},
"tbfed-pagefooter": {
"copyright":"Copyright &copy r00tuser 2017",
"modify_label": "该文件修订时间:",
"modify_format": "YYYY-MM-DD HH:mm:ss"
},
"anchor-navigation-ex": {
"isRewritePageTitle": true,
"isShowTocTitleIcon": true,
"tocLevel1Icon": "fa fa-hand-o-right",
"tocLevel2Icon": "fa fa-hand-o-right",
"tocLevel3Icon": "fa fa-hand-o-right"
},
"sectionx": {
"tag": "b"
},
"disqus": {
"shortName": "yourshorName"
}
},
"title": "test book",
"variables": {},
"theme-default": {
"showLevel": true
}
}
}

因为language默认是en,如果需要用到中文的话,要这样设置"language": "zh-hans"

关于book.json的介绍与及插件可以查看这篇文章Gitbook 实用配置及插件介绍

后话

果然,逼自己去写文章总结,就会遇到很多问题。又学到了不少东西。

参考资料

1,Gitbook editor

2,Gitbook 实用配置及插件介绍

3,Gitbook 使用教程

4,GitBook 简明教程

5,GitBook官方文档

gitbook初体验的更多相关文章

  1. Taro开发微信小程序的初体验

    了解Taro 听说Taro是从几个星期前开始的,在一次饭桌上,一个小伙伴说:"Hey, 你听说了Taro么,听说只需要写一套程序就可以生成H5,小程序以及RN的代码模板,并且类似于React ...

  2. .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验

    不知不觉,“.NET平台开源项目速览“系列文章已经15篇了,每一篇都非常受欢迎,可能技术水平不高,但足够入门了.虽然工作很忙,但还是会抽空把自己知道的,已经平时遇到的好的开源项目分享出来.今天就给大家 ...

  3. Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验

    Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...

  4. Spring之初体验

                                     Spring之初体验 Spring是一个轻量级的Java Web开发框架,以IoC(Inverse of Control 控制反转)和 ...

  5. Xamarin.iOS开发初体验

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKwAAAA+CAIAAAA5/WfHAAAJrklEQVR4nO2c/VdTRxrH+wfdU84pW0

  6. 【腾讯Bugly干货分享】基于 Webpack & Vue & Vue-Router 的 SPA 初体验

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57d13a57132ff21c38110186 导语 最近这几年的前端圈子,由于 ...

  7. 【Knockout.js 学习体验之旅】(1)ko初体验

    前言 什么,你现在还在看knockout.js?这货都已经落后主流一千年了!赶紧去学Angular.React啊,再不赶紧的话,他们也要变out了哦.身旁的90后小伙伴,嘴里还塞着山东的狗不理大蒜包, ...

  8. 在同一个硬盘上安装多个 Linux 发行版及 Fedora 21 、Fedora 22 初体验

    在同一个硬盘上安装多个 Linux 发行版 以前对多个 Linux 发行版的折腾主要是在虚拟机上完成.我的桌面电脑性能比较强大,玩玩虚拟机没啥问题,但是笔记本电脑就不行了.要在我的笔记本电脑上折腾多个 ...

  9. 百度EChart3初体验

    由于项目需要在首页搞一个订单数量的走势图,经过多方查找,体验,感觉ECharts不错,封装的很细,我们只需要看自己需要那种类型的图表,搞定好自己的json数据就OK.至于说如何体现出来,官网的教程很详 ...

随机推荐

  1. 遇到attemp to invoke virtual method

    这个很大原因是没有预先初始化sdk,检查application的配置是否配置了application:name

  2. IBM Security AppScan Standard 用外部设备录制脚本(手机端应用、app、微信等)进行安全测试

    一.打开AppScan,选择外部设备/客户机,点击下一步 二.记录代理设置,可以手动输入需要的端口号,也可以自动选择,记住端口号以及PC电脑的ip地址,手机端如何设置对应的端口跟ip可以参考 Jmet ...

  3. angular4.0 父子组建之间的相互通信

    父组建---->子组建 传递信息 首先先通过angular脚手架生成两个基本组件,有一个好处是 会自动关联到跟模版,节约时间,而且还是偷懒 ng generate component compo ...

  4. Linux配置LNMP环境(一)配置Nginx

    注意:配置版本nginx-1.12.0,使用虚拟机安装linux.教程中的下载地址可能有变化.注意(在您看本教程之前首先需要对linux的基本操作熟悉) 1.  先cd到/usr/local/src ...

  5. Apache+Tomcat实现动静分离

    完成Tomcat集群搭建后,我们只需修改两.三处即可实现动静分离. 1.将原来httpd.conf中JkMount的路由规则都放入conf/extra/httpd-urimap.conf中: /*=l ...

  6. //读取配置文件(属性文件)的工具类-ConfigManager

    package com.pb.news.util; import java.io.IOException;import java.io.InputStream;import java.sql.Resu ...

  7. String.valueOf() 方法的使用

      1. 由 基本数据型态转换成 String String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 也就是 String.valueOf() 这个参数多载的方法 ...

  8. java 分页模型的模板

    分页sql select top 每页要显示的记录数 * from 表名 where 主键 not in (select top (每页显示的记录数*(当前页-1)) 主键 from 表名 ) sel ...

  9. Java负载均衡-輪詢法

    import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import java.util.Set; /* ...

  10. POJ 1470 Closest Common Ancestors(最近公共祖先 LCA)

    POJ 1470 Closest Common Ancestors(最近公共祖先 LCA) Description Write a program that takes as input a root ...