白癜风能治得好 http://m.39.net/pf/a_7157873.html平时比较懒,写的文章和羊拉屎一样,东一点,西一点,散落在各个平台。一直想把所有的文章都放在一个统一的地方,可以起到备份作用,同时也希望有一个自己的窝。
以前也尝试用过hexo和Hugo这样的静态博客,搭配上主题还是非常舒服的。不过功能上偏向博客需求,如果想定制一些专题写作计划,实现起来比较麻烦。
经过一番折腾,决定把文章签到到文档生成器上,看起来会系统一些,当然也会存在一些问题,比如标签管理和编写时间的缺失。任何计划都有利有弊,还是先做一个出来再说。
选择mkdocs还是sphinx
因为自己主要使用python语言,所以还是使用python开发的工具会比较有安全感,如果真遇到问题,至少可以通过源码去排查问题。python其实也有pelican这样的静态博客生成器,使用起来也非常方便。在文档生成器上,主要有2个主流的:mkdocs和sphinx。
很多大佬写的框架都是sphinx编写的,比如requests库就是通过sphinx部署在readthedocs平台上。
mkdocs用来会简单一些,而且越来越多的新框架使用mkdocs编写文档,像web开发框架FastAPI。看了一下sphinx和mkdocs的官方文档,mkdocs会清晰一些,sphinx看起来有点复杂。又查看了GitHub上面两个库的star数,最后还是选择用mkdocs。
安装mkdocs
mkdocs使用python语言编写,先要下载python环境,然后通过pip安装:
pipinstallmkdocs
接下来使用mkdocs命令进行操作,命令主要有4个:
build,把markdown文档转成html页面,在网页中呈现的效果就是build之后的html文档;gh-deploy,部署文档到GitHubPages,主要作用是把生成的HTML文档放到gh-pages分支当中,然后让GitHubPages显示gh-pages分支当中HTML页面;new生成一个新的项目,其实就是创建一个mkdocs.yml的配置文件和doc目录存储markdown文件;serve运行服务器,通过自己的方式在本地或服务器部署,内部是使用tornado作为服务器运行。
先在任意目录下创建一个项目:
mkdocsnew.
此时目录下会有一个mkdocs.yml文件和一个docs/的子目录,子目录下面有一个index.md的文件。
在mkdocs中写文章docs/index.md文件就是整个项目的首页,在本地开启服务:
mkdocsserve通过浏览器访问