故事背景:很多时候对外发布的产品需要一份html格式的文档
首先要了解的是 word直接转成html是不现实的,需要通过md文件来转换。
我们本节课讨论的Gitbook即是在MD基础上进行操作的。
所以
任务一:安装软件,用于编辑md文件,简单自学一下即可掌握任务二:全局安装gitbook
npm install -g gitbook-cli
任务三:打开当前目录,执行
$ gitbook init
你会看到两个文件,README.md 和 SUMMARY.md
将SUMMARY.md 文件拖入typora进行编辑# 目录* [前言](README.md)* [第一章](one/README.md) * [1](one/one.md) * [2](one/two.md) * [3](one/three.md)* [第二章](two/README.md)* [第三章](three/README.md)
然后保存编辑,再次执行gitbook init,gitbook会根据这个summary文件内的结构创建相应的文件。
任务四:运行
$ gitbook serve
然后可以根据提示在本地查看运行效果
任务五:生成html
$ gitbook build
执行后会在_book目录下生成我们需要的html文件,那么剩下的工作量其实就是维护md,这里建议使用git
拓展:
这里要补充两点
第一: gitbook社区拥有很多插件,我们可以通过gitbook install命令来安装,需要我们创建一个book.json文件,我自己使用的这份json文件可以用来参考
{ "author": "yanhuinan", "description": "devDoc", "extension": null, "generator": "site", "title": "二次开发文档", "language": "1c, abnf, accesslog, actionscript, ada, apache, applescript, arduino, armasm, asciidoc, aspectj, autohotkey, autoit, avrasm, awk, axapta, bash, basic, bnf, brainfuck, cal, capnproto, ceylon, clean, clojure, clojure-repl, cmake, coffeescript, coq, cos, cpp, crmsh, crystal, cs, csp, css, d, dart, delphi, diff, django, dns, dockerfile, dos, dsconfig, dts, dust, ebnf, elixir, elm, erb, erlang, erlang-repl, excel, fix, flix, fortran, fsharp, gams, gauss, gcode, gherkin, glsl, go, golo, gradle, groovy, haml, handlebars, haskell, haxe, hsp, htmlbars, http, hy, inform7, ini, irpf90, java, javascript, json, julia, kotlin, lasso, ldif, leaf, less, lisp, livecodeserver, livescript, llvm, lsl, lua, makefile, markdown, mathematica, matlab, maxima, mel, mercury, mipsasm, mizar, mojolicious, monkey, moonscript, n1ql, nginx, nimrod, nix, nsis, objectivec, ocaml, openscad, oxygene, parser3, perl, pf, php, pony, powershell, processing, profile, prolog, protobuf, puppet, purebasic, python, q, qml, r, rib, roboconf, rsl, ruby, ruleslanguage, rust, scala, scheme, scilab, scss, smali, smalltalk, sml, sqf, sql, stan, stata, step21, stylus, subunit, swift, taggerscript, tap, tcl, tex, thrift, tp, twig, typescript, vala, vbnet, vbscript, vbscript-html, verilog, vhdl, vim, x86asm, xl, xml, xquery, yaml, zephir", "variables": {}, "links": { "sharing": { "all": null, "facebook": null, "google": null, "twitter": null, "weibo": true, "wechat": true } }, "output": null, "pdf": { "fontSize": 12, "footerTemplate": null, "headerTemplate": null, "margin": { "bottom": 36, "left": 62, "right": 62, "top": 36 }, "pageNumbers": false, "paperSize": "a4" }, "plugins": [ "-livereload", "theme-comscore", "-lunr", "-search", "search-plus@^0.0.11", "simple-page-toc@^0.1.1", "-highlight", "prism@^2.0.3", "prism-themes@^0.0.2", "advanced-emoji@^0.2.1", "anchors@^0.7.1", "include-codeblock@^3.0.2", "ace@^0.3.2", "emphasize@^1.1.0", "katex@^1.1.3", "splitter@^0.0.8", "mermaid-gb3@2.1.0", "tbfed-pagefooter@^0.0.1", "expandable-chapters-small@^0.1.7", "donate@^1.0.2", "favicon@^0.0.2", "todo@^0.1.3", "terminal@^0.3.2", "alerts@^0.2.0", "include-csv@^0.1.0", "markdown-video", "anchor-navigation-ex", "embed-pdf", "chart@^0.2.0" ], "pluginsConfig": { "theme-default": { "showLevel": true }, "prism": { "css": ["prismjs/themes/prism-okaidia.css"], "lang": { "flow": "javascript" } }, "include-codeblock": { "template": "ace", "unindent": true, "edit": true }, "tbfed-pagefooter": { "copyright": "Copyright © xdatainsight@yanhuinan", "modify_label": "该文件修订时间:", "modify_format": "YYYY-MM-DD HH:mm:ss" }, "donate": { "wechat": "./img/pay.jpg", "title": "", "button": "联系作者", "wechatText": "18380464736" }, "simple-page-toc": { "maxDepth": 3, "skipFirstH1": true }, "sectionx": { "tag": "b" }, "favicon": { "shortcut": "favicon.ico", "bookmark": "favicon.ico" }, "terminal": { "copyButtons": true, "fade": false, "style": "flat" } }}
第二:我们的gitbook还拥有生成pdf epub mobi格式的功能,但是经过试验,效果不太好,暂时不推荐
来看一下最终效果