内容简介:mkdocs 是一个基于Python 对 Markdown 非常友好的文档生成器,中文文档地址使用 mkdocs 我们可以用 md 编写自己的文档,而且可以免费部署到 GitHub 。pip install mkdocs
mkdocs 是一个基于 Python 对 Markdown 非常友好的文档生成器,中文文档地址
使用 mkdocs 我们可以用 md 编写自己的文档,而且可以免费部署到 GitHub 。
安装
pip install mkdocs
新建文档
λ mkdocs.exe new mydoc INFO - Creating project directory: mydoc INFO - Writing config file: mydoc\mkdocs.yml INFO - Writing initial docs: mydoc\docs\index.md λ cd mydoc\ d:\code\mydoc λ ls docs/ mkdocs.yml d:\code\mydoc λ mkdocs serve INFO - Building documentation... INFO - Cleaning site directory [I 190528 20:32:49 server:296] Serving on http://127.0.0.1:8000 [I 190528 20:32:49 handlers:62] Start watching changes [I 190528 20:32:49 handlers:64] Start detecting changes [I 190528 20:33:06 handlers:135] Browser Connected: http://127.0.0.1:8000/
编辑文档
vi docs/index.md
把 command 改为中文 命令 记得把文件改为 utf8 编码,否则会出错
INFO - Building documentation... ERROR - Encoding error reading file: index.md ERROR - Error reading page 'index.md': 'utf-8' codec can't decode byte 0xc3 in position 92: invalid continuation byte [E 190528 20:38:45 ioloop:801] Exception in callback <bound method LiveReloadHandler.poll_tasks of <class 'livereload.handlers.LiveReloadHandler'>>
刷新看到效果
vi mkdocs.yml
把site_name 的 my docs 改为中文 我的文档
添加页面
vi about.md
vi mkdocs.yml
site_name: 文档 pages: - [index.md, Home] - [about.md, About]
然后报错了
INFO - Building documentation...
ERROR - Config value: 'pages'. Error: Invalid pages config. {<class 'list'>} {<class 'str'>, <class 'dict'>}
[E 190529 09:57:45 ioloop:801] Exception in callback <bound method LiveReloadHandler.poll_tasks of <class 'livereload.handlers.LiveReloadHandler'>>
Traceback (most recent call last):
File "d:\python\lib\site-packages\tornado\ioloop.py", line 1229, in _run
return self.callback()
File "d:\python\lib\site-packages\livereload\handlers.py", line 69, in poll_tasks
filepath, delay = cls.watcher.examine()
File "d:\python\lib\site-packages\livereload\watcher.py", line 105, in examine
func()
File "d:\python\lib\site-packages\mkdocs\commands\serve.py", line 107, in builder
site_dir=site_dir
File "d:\python\lib\site-packages\mkdocs\config\base.py", line 210, in load_config
"Aborted with {0} Configuration Errors!".format(len(errors))
mkdocs.exceptions.ConfigurationError: Aborted with 1 Configuration Errors!
λ mkdocs -V
mkdocs, version 1.0.4 from d:\python\lib\site-packages\mkdocs (Python 3.7)
Google 查找到issue https://github.com/mkdocs/mkdocs/issues/1770
https://www.mkdocs.org/user-guide/writing-your-docs/#configure-pages-and-navigation
改为
site_name: 我的文档 nav: - 主页: 'index.md' - 关于: 'about.md' theme: readthedocs
https://markdown-docs-zh.readthedocs.io/zh_CN/latest/
原来是中文文档过时了。
站点生成
λ mkdocs build INFO - Cleaning site directory INFO - Building documentation to directory: d:\code\mydoc\site d:\code\mydoc λ ls docs/ mkdocs.yml site/
一段时间后, 可能有文件被从源码中移除了, 但是相关的文档仍残留在 site 目录中. 在构建命令中添加 --clean 参数即可移除这些文档.
$ mkdocs build --clean λ cd site\ d:\code\mydoc\site λ ls 404.html css/ img/ js/ search.html sitemap.xml.gz about/ fonts/ index.html search/ sitemap.xml d:\code\mydoc\site λ php -S localhost:8000 PHP 7.1.13 Development Server started at Wed May 29 10:17:19 2019 Listening on http://localhost:8000
部署到GitHub
部署之前先配置下GitHub秘钥
cd ~/.ssh
ssh-keygen -t rsa -C “mysusheng@gmail.com”
这里不要一路回车,我们自己手动填写保存路径
vi config
Host github.com HostName github.com User git IdentityFile ~/.ssh/mysusheng λ ssh -T git@github.com Hi sushengbuhuo! You've successfully authenticated, but GitHub does not provide shell access.
然后将公钥上传到GitHub 配置。
λ git clone https://github.com/sushengbuhuo/markdown_doc Cloning into 'markdown_doc'... remote: Enumerating objects: 3, done. remote: Counting objects: 100% (3/3), done. remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), done. d:\code λ cd markdown_doc\ d:\code\markdown_doc (master) λ ls README.md d:\code\markdown_doc (master) λ mkdir docs d:\code\markdown_doc (master) λ cd docs\ d:\code\markdown_doc\docs (master) λ mkdocs.exe new . INFO - Writing config file: .\mkdocs.yml INFO - Writing initial docs: .\docs\index.md d:\code\markdown_doc\docs (master) λ mkdocs build INFO - Cleaning site directory INFO - Building documentation to directory: d:\code\markdown_doc\docs\site d:\code\markdown_doc\docs (master) λ echo "site/" >> .gitignore d:\code\markdown_doc\docs (master) λ mkdocs gh-deploy --clean INFO - Cleaning site directory INFO - Building documentation to directory: d:\code\markdown_doc\docs\site WARNING - Version check skipped: No version specificed in previous deployment. INFO - Copying 'd:\code\markdown_doc\docs\site' to 'gh-pages' branch and pushing to GitHub. INFO - Your documentation should shortly be available at: https://sushengbuhuo.github.io/markdown_doc/
就是把site目录代码上传到github gh-pages分支了.
推送完成后浏览器访问 https://sushengbuhuo.github.io/markdown_doc/ 就可以看到效果了,接着修改md文件完善你的文档。
推荐阅读:
公众号:苏生不惑
以上所述就是小编给大家介绍的《Python 文档生成器 mkdocs》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Remote
Jason Fried、David Heinemeier Hansson / Crown Business / 2013-10-29 / CAD 26.95
The “work from home” phenomenon is thoroughly explored in this illuminating new book from bestselling 37signals founders Fried and Hansson, who point to the surging trend of employees working from hom......一起来看看 《Remote》 这本书的介绍吧!