将重构的文本文档转换为HTML5+Twitter的引导CSS、deck.js或reveal.js
rst2html5-tools的Python项目详细描述
我们都喜欢rst和生成任何格式的能力,但是rst2html工具生成真正基本的html和css。
这个工具将生成更新的、更好的、可读性更强的标记,并提供使用诸如nice css之类的扩展修改输出的方法。 感谢twitter的引导css或deck.js的在线演示
得到它
通过PIP:
pip install rst2html5-tools
本地:
git clone https://github.com/marianoguerra/rst2html5.git cd rst2html5 git submodule init git submodule update sudo python setup.py install
使用它
生成基本HTML文档:
rst2html5 examples/slides.rst > clean.html
使用deck.js生成一组幻灯片:
rst2html5 --deck-js --pretty-print-code --embed-content examples/slides.rst > deck.html
使用reveal.js生成一组幻灯片:
rst2html5 --jquery --reveal-js --pretty-print-code examples/slides.rst > reveal.html
使用impress.js生成一组幻灯片:
rst2html5 --stylesheet-path=html5css3/thirdparty/impressjs/css/impress-demo.css --impress-js examples/impress.rst > output/impress.html
使用引导生成页面:
rst2html5 --bootstrap-css --pretty-print-code --jquery --embed-content examples/slides.rst > bootstrap.html
到带有pygments的higlight代码:
rst2html5 --pygments examples/codeblock.rst > code.html
请注意,您必须添加样式表以使代码真正突出显示,这只是执行代码解析和html转换
在HTML文件中嵌入图像以便有一个要分发的.html文件 添加–嵌入图像选项。
后置处理器支持可选参数,它们通过一个命令传递 行选项,与后处理器的名称相同,在 结束,例如要更改RevealJS主题,可以执行以下操作:
rst2html5 --jquery --reveal-js --reveal-js-opts theme=serif examples/slides.rst > reveal.html
您还可以将基本路径传递给主题css文件:
rst2html5 --jquery --reveal-js --reveal-js-opts theme=serif,themepath=~/mytheme examples/slides.rst > reveal.html
它将在~/mytheme/serif.css中查看主题
选项以逗号分隔的键值对列表形式传递 等号,值将被解析为json,如果解析失败,它们将作为 字符串,例如下面是选项的示例:
--some-processor-opts theme=serif,count=4,verbose=true,foo=null
如果一个键不止一次作为值列表传递给处理器,请注意,如果只传递了一个值,则按原样传递,如果您希望始终接收列表,则提供方便函数a s_list来处理此情况。
要将自定义js文件添加到结果文件中,可以使用–add js post处理器,如下所示:
rst2html5 slides.rst --add-js --add-js-opts path=foo.js,path=bar.js
该命令将把foo.js和bar.js作为脚本添加到生成的html文件中。
漂亮的打印代码注释
启用它:
--pretty-print-code
添加特定语言的词汇:
--pretty-print-code-opts langs=clj:erlang
注意:在传递选项以进行如下美化时,必须同时传递这两个选项:
--pretty-print-code --pretty-print-code-opts langs=clj:erlang
也就是说,用冒号分隔的语言的名称,在 写这篇文章的时刻是:
- 阿波罗号
- 基本
- CLJ
- css
- 省道
- 二郎
- 前进
- hs
- 口齿不清
- llvm
- lua
- matlab软件
- 毫升
- 腮腺炎
- n
- 帕斯卡
- 原型
- 研发
- R
- 斯卡拉
- SQL
- tcl公司
- 特克斯
- vb
- vhdl语言
- 维基
- XQ
- 山药
您可以在html5css3/thirdparty/prettify/lang-*.js下看到可用的lexer
收入注释
打印通行证–显示js opts printpdf=true,例如:
rst2html5 --jquery --reveal-js --reveal-js-opts printpdf=true examples/slides.rst > reveal-print.html
可以使用chrome或chrome打开,并按此处所述以pdf格式打印:https://github.com/hakimel/reveal.js#pdf-export
数学支持
使用math角色和指令将内联数学和块级方程式包含到文档中:
When :math`a \ne 0`, there are two solutions to :math:`ax^2 + bx + c = 0` and they are .. math:: x = {-b \pm \sqrt{b^2-4ac} \over 2a}
两者都支持LaTeX语法的基本子集。
默认情况下,MathJax用于显示数学。您可以使用--math-output命令行选项选择不同的输出格式:
- --math-output mathjax使用mathjax(默认值)
- --math-output html将使用纯html+css
- --math-output mathml将使用MathML
- --math-output latex输出原始乳胶
如果使用mathjax,则可以使用--mathjax-url和-mathjax-config命令行选项分别配置自定义mathjax javascript url和提供具有自定义mathjax配置的文件。
如果使用html+css输出,则可以使用--math-cssco用于配置自定义数学样式表的命令行选项。
注意,旧的mathjax后处理器(使用--mathjax激活)已被弃用。
查看
您可以在此处看到上述命令的示例:
- http://marianoguerra.github.com/rst2html5/output/clean.html
- http://marianoguerra.github.com/rst2html5/output/reveal.html
- http://marianoguerra.github.com/rst2html5/output/deck.html
- http://marianoguerra.github.com/rst2html5/output/impress.html
- http://marianoguerra.github.com/rst2html5/output/bootstrap.html
视频指令示例
想做贡献吗?
克隆并发送一个请求!
git clone https://github.com/marianoguerra/rst2html5.git cd rst2html5 git submodule update --init python setup.py develop
自我释放注意事项
- 在setup.py上更新版本
python setup.py sdist upload