一文了解如何搭建Typora + docsify文档系统
欢迎访问我的文档:smile97的技术小屋
docsify是干什么的?
docsify,一款神奇的文档网站生成器。docsify 可以快速帮你生成文档网站。不同于 GitBook、Hexo 的地方是,它不会生成静态的 .html 文件,所有转换工作都是在运行时。如果你想要开始使用它,只需要创建一个 index.html 就可以开始编写文档并直接部署在 GitHub Pages。
docsify的使用
安装
// 全局安装docsify工具,方便创建本地预览生成的文档
npm install docsify-cli -g
初始化
// 初始化项目
docsify init
开始写文档
初始化成功后,可以看到目录下有3个文件
index.html入口文件README.md一般会作为主页内容渲染.nojekyll用于阻止 GitHub Pages 忽略掉下划线开头的文件
直接编辑README.md就可以渲染文档
本地预览
通过运行docsify serve启动一个本地服务服务器,可以方便实时预览效果。默认访问地址http//localhost:3000
docsify serve
更多命令行工具用法,参考docsify源码, 具体实践文档参考docsify文档
使用注意点
- 官方文档提供的
script脚本依赖部分有bug,使用以下html中内容即可搭建常规文档页面
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>smile97的技术小屋</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
<meta name="description" content="Description">
<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/docsify/themes/vue.css">
<!-- <link rel="stylesheet" href="//unpkg.com/docsify/lib/themes/vue.css">-->
<!-- 设置浏览器图标 -->
<link rel="icon" href="/favicon.ico" type="image/x-icon"/>
<!-- <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />-->
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?f5bd120e1d351a666dc307fbf05e38d2";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
</head>
<body>
<div id="app">loading...</div>
<script>
// console.log(window.Docsify.version, '=======')
window.$docsify = {
// 项目名称
name: 'smile97的技术小屋🍀',
// 仓库地址
repo: 'https://github.com/smile199705/base_docs.git',
// 侧边栏支持,默认加载项目根目录下的_sidebar.md
loadSidebar: true,
// 导航栏支持,默认加载根目录下的_navbar.md
loadNavbar: true,
// 封面支持,默认加载的是项目根目录下的_coverpage.md文件
coverpage: true,
// 只在访问主页时加载封面
onlyCover: false,
// 找不到指定页面,指向_404.md
notFoundPage: true,
// Disqus评论系统支持
// disqus: 'shortname',
//
alias: {
'./_sidebar.md': '/_sidebar.md'
},
subMaxLevel: 2, // 设置生成目录的最大层级
auto2top: true, // 切换页面后是否自动跳转到页面顶部。
// 小屏设备下合并导航栏到侧边栏
mergeNavbar: true,
// homepage: '_sidebar.md',
// 搜索配置
search: {
maxAge: 86400000,
paths: 'auto',
placeholder: '🔍 请输入要搜索的关键字 ',
noData: '😞 No Results!',
hideOtherSidebarContent: false,
depth: 5,
// 您可以提供一个正则表达式来匹配前缀。在这种情况下,
// 匹配到的字符串将被用来识别索引
pathNamespaces: /^(\/(zh-cn|ru-ru))?(\/(v1|v2))?/
},
//外链打开方式
// externalLinkTarget: '_blank',
copyCode: {
buttonText : '复制',
errorText : '复制失败',
successText: '已复制'
},
pagination: {
previousText: 'PREVIOUS',
nextText: 'NEXT',
crossChapter: true
},
count: {
countable: true,
fontsize: '0.9em',
color: 'rgb(90,90,90)',
language: 'chinese'
}
}
</script>
<!-- Docsify v4 -->
<!--<script src="//cdn.jsdelivr.net/npm/docsify@4"></script>-->
<!--<!– docsify的js依赖 –>-->
<!--<script src="//cdn.jsdelivr.net/npm/docsify/lib/docsify.min.js"></script>-->
<!--<!– 搜索功能支持 –>-->
<!--<!–<script src="//cdn.jsdelivr.net/npm/docsify/lib/plugins/search.min.js"></script>–>-->
<!--<script src="https://cdn.jsdelivr.net/npm/docsify@4/lib/plugins/search.js"></script>-->
<!--<!–图片放缩–>-->
<!--<script src="//cdn.jsdelivr.net/npm/docsify/lib/plugins/zoom-image.min.js"></script>-->
<!-- emoji表情支持 -->
<!--<script src="//cdn.jsdelivr.net/npm/docsify/lib/plugins/emoji.min.js"></script>-->
<!--<script src="//cdn.jsdelivr.net/npm/docsify-copy-code"></script>-->
<!--<script src="//cdn.jsdelivr.net/npm/docsify-copy-code/dist/docsify-copy-code.min.js"></script>-->
<!--<script src="https://cdn.jsdelivr.net/npm/prismjs@1.22.0/components/prism-java.min.js"></script>-->
<!--以上依赖为官方提供脚本,部分有问题,充满bug(不生效、展示有问题等)-->
<!--采用下方依赖脚本-->
<script src="//unpkg.com/docsify/lib/docsify.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/docsify@4/lib/plugins/search.js"></script>
<script src="//unpkg.com/docsify-pagination/dist/docsify-pagination.min.js"></script>
<script src="//unpkg.com/docsify/lib/plugins/zoom-image.js"></script>
<script src="//unpkg.com/prismjs/components/prism-bash.js"></script>
<script src="//unpkg.com/prismjs/components/prism-java.min.js"></script>
<!-- emoji表情支持 -->
<script src="//cdn.jsdelivr.net/npm/docsify/lib/plugins/emoji.min.js"></script>
<script src="//cdn.jsdelivr.net/npm/docsify-copy-code/dist/docsify-copy-code.min.js"></script>
</body>
</html>
-
在
_sidebar.md编辑侧边栏层级关系,在_navbar.md编辑顶部导航栏,在_coverpage.md编辑封面内容, 在README.md编辑首页内容 -
每次书写
md文档指定到./docs目录下,并在侧边栏文档中写好路径即可实时访问