4. 模块介绍
下述均为个人理解,不保证准确性
python markdown¶
是用python写的markdown模块,用这模块可以将markdown文本渲染成html,比如:
>>> import markdown
>>> text = '''
... # abc
... ```go
... import "fmt"
... ```
...
... ## sss
...
... - xxx
... - yyy
... '''
>>> html = markdown.markdown(text)
>>> print html
<h1>abc</h1>
<p><code>go
import "fmt"</code></p>
<h2>sss</h2>
<ul>
<li>xxx</li>
<li>yyy</li>
</ul>
同时markdown模块内置一些扩展,有:
- abbr.py
- admonition.py
- attr_list.py
- codehilite.py
- def_list.py
- extra.py
- fenced_code.py
- footnotes.py
- headerid.py
- meta.py
- nl2br.py
- sane_lists.py
- smart_strong.py
- smarty.py
- tables.py
- toc.py
- wikilinks.py
pymdownx¶
是python的一个模块,扩展了markdown的功能,比如emoji图标、可折叠的文本框等,pymdownx也是调用markdown模块做事,pymdownx包含以下功能:
- arithmatex.py
- b64.py
- betterem.py
- caret.py
- critic.py
- details.py
- emoji.py
- emoji1_db.py
- escapeall.py
- extra.py
- extrarawhtml.py
- gemoji_db.py
- github.py
- highlight.py
- inlinehilite.py
- keymap_db.py
- keys.py
- magiclink.py
- mark.py
- pathconverter.py
- plainhtml.py
- progressbar.py
- slugs.py
- smartsymbols.py
- snippets.py
- superfences.py
- tasklist.py
- tilde.py
- twemoji_db.py
- util.py
mkdocs¶
是用python编写的,包括mkdocs主题及命令行工具,mkdocs调用python markdown来渲染html,其中重写了少部分基础功能,比如toc,以达到符合mkdocs主题效果;mkdocs也内置一种主题,就叫mkdocs,同时也内置支持readthedocs,并且mkdocs也支持自定义主题。mkdocs主要就是一个集成器,通过这个工具来简化渲染、部署、使用、模块调用、主题调用
material¶
是python的一个模块,是符合mkdocs规范的自定义主题,可以通过pip install mkdocs-material来下载,这个模块里面都是一些js、css、html文件
material这个模块名和主题风格,是来自于google material,即google定义的一种通用风格,用于兼容不同分辨率下的页面展示,即只要符合这种谷歌风格的,一处编写,处处使用(在pc、手机上都可以用,即会根据分辨率自动调整页面展示)
material主题对python markdown的一些内置扩展和pymdownx的功能做了主题效果优化,以便更优美,内置的有:
-
支持的python markdown扩展有:Admonition、CodeHilite、Footnotes、Metadata、Permalinks
-
pymdownx有:Arithmatex、BetterEM、Caret、Critic、Details、Emoji、InlineHilite、MagicLink、Mark、SmartSymbols、SuperFences、Tasklist、Tilde