MkDocs | 超简单的文档生成器

简介: MkDocs | 超简单的文档生成器

前言


最近啊,我比较迷恋文档和静态站点生成,今天我们再分享一个基于 PythonMarkdown 的文档生成器。它就是 MkDocs


关于 MkDocs


MkDocs 是一个快速、简单、完全华丽的静态站点生成器,用于构建项目文档。文档源文件以 Markdown 格式编写,并使用单个 YAML 配置文件进行配置。


呆猫


安装 MkDocs


pip install mkdocs
复制代码


创建 MkDocs 项目


PS C:\> mkdocs.exe new my-demo
INFO     -  Creating project directory: my-demo
INFO     -  Writing config file: my-demo\mkdocs.yml
INFO     -  Writing initial docs: my-demo\docs\index.md
PS C:\> cd .\my-demo\
PS C:\my-demo> ls
    目录: C:\my-demo
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----          22-2-9  下午 09:00                docs
-a----          22-2-9  下午 09:00             20 mkdocs.yml
PS C:\my-demo>
复制代码


启动项目


命令:mkdocs.exe serve


网络异常,图片无法展示
|


网络异常,图片无法展示
|


如上,我们可以发现两个亮点。第一 MkDocs 生成的文档自带 ico;第二 MkDocs 默认支持搜索。


打造我们自己的在线文档


MkDocs 不同于 Pelican 等站点生成器,其类似 Docsify+Pelican,即可以在访问过程中动态渲染,也可以编译为静态资源。我们只需要维护自己的 docs 目录即可。


创建自己的文档


我们在 docs 目录下创建我们自己的文档mydemo.md,内容太长,就不做展示了。

然后我们访问http://localhost:8000/,就可以看到我们的站点已经发生了变化。没错,MkDocs 是支持热加载的。


网络异常,图片无法展示
|


网络异常,图片无法展示
|


下拉菜单


我们需要在mkdocs.yml中进行 nav 配置,假设我们想把我们的文章 Mydemo 放到一个 Blog 下拉菜单中,起名为 Pelican 入门。


site_name: My Docs
nav:
    - Home: '../'
    - 'Blog':
      - 'Pelican入门': 'mydemo.md'
复制代码


再次查看http://localhost:8000/


网络异常,图片无法展示
|


不得不说,秒啊。


编译文档


mkdos.exe build
复制代码


网络异常,图片无法展示
|


我们进入 site 目录,用 pythonhttp.server 模块启动我们能的静态站点。


网络异常,图片无法展示
|


网络异常,图片无法展示
|


为了方便展示,我们直接使用 pythonhttp.server 工具启动了我们的站点,实际生产中建议你选择 nginx 之类的 web 服务器来托管你的静态站点。


更多内容详见:www.mkdocs.org/

相关文章
|
30天前
|
自然语言处理 算法 前端开发
C++与Doxygen:精通代码文档化之道
C++与Doxygen:精通代码文档化之道
49 0
|
1月前
|
存储 缓存 Python
如何使用Python抓取PDF文件并自动下载到本地
如何使用Python抓取PDF文件并自动下载到本地
34 0
|
3月前
|
Python
使用python合并文档
使用python合并文档
38 0
|
30天前
|
存储 缓存 算法
【Conan 入门教程 】了解 Conan2.1 中默认生成器的作用
【Conan 入门教程 】了解 Conan2.1 中默认生成器的作用
30 1
|
7月前
|
数据采集 JavaScript 前端开发
使用Puppeteer构建博客内容的自动标签生成器
标签是一种用于描述和分类博客内容的元数据,它可以帮助读者快速找到感兴趣的主题,也可以提高博客的搜索引擎优化(SEO)。然而,手动为每篇博客文章添加合适的标签是一件费时费力的工作,有时候也容易遗漏或重复。本文将介绍如何使用Puppeteer这个强大的Node.js库来构建一个博客内容的自动标签生成器,它可以根据博客文章的标题和正文内容,自动提取出最相关的标签,并保存到数据库中。
使用Puppeteer构建博客内容的自动标签生成器
|
3月前
doxygen根据代码生成文档
doxygen根据代码生成文档
13 0
|
8月前
|
自然语言处理 算法 固态存储
NonCompressibleFiles -- 空文件夹生成器
其功用在于产生测试用途的指定大小文件(最大单个10G),并且可以指定为不可压缩文件(压缩后体积不会发生变化)或最大可压缩文件格式(测试生成一个100M文件压缩为55KB),快速产生各种不同大小的测试文件
95 0
|
JSON 数据可视化 数据安全/隐私保护
【Python】操作文档PDF
在开发项目过程中,操作PDF的比例在操作文档中,有的使用比例不在少数,多数时候依赖库多到自己没办法选择,现在这里给大家推荐两款比较适合使用的第三方库,使得我们在操作PDF时便利不少,下面开始学习之旅吧。
【Python】操作文档PDF
|
应用服务中间件 定位技术 数据库
vuepress站点生成器的使用
vuepress,docker,docker-compose