HTML演示曲线幻灯片以python语法突出显示
-
09-10-2019 - |
题
我想为我的演示创建幻灯片。我的演示文稿将包含以下内容:幻灯片标题,子弹点,代码片段(在单层字体中),某些代码线突出显示为粗体,python代码段(带有语法突出显示)。
我需要一个可以在HTML(或HTML5)中生成此类幻灯片的应用程序或工具,因此,当我在Web浏览器中打开生成的HTML并将Web浏览器放置到全屏模式时,它将启动幻灯片。我更喜欢写我的演讲 .txt
使用一些标记的文件,然后该工具应生成HTML。
我知道演示文稿功能Google文档,但这不支持Python语法突出显示。
我也知道 乳胶和Beamer, ,但这将生成PDF,而不是HTML(不是一个大问题),并且没有内置的Python语法突出显示。
我更喜欢使用香草Google Chrome或Mozilla Firefox投影我的演示文稿。我不想安装任何演示软件(例如 布鲁斯)在投影机上。
还有其他选择吗?
解决方案
尝试以下一项:
S5重组文本
http://meyerweb.com/eric/tools/s5/
http://docutils.sourceforge.net/docs/user/slide-shows.html
如果您安装 Docutils (快照是优选的),您将在工具文件夹中获得RST2S5.PY。
布鲁斯,演示工具
Pandoc:通用文档转换器
其他提示
刚刚 滑 出现:将您的演示文稿编辑为HTML,并突出显示Python(和许多其他语言)。
html5slides是绝佳的选择。
这只是您要的内容的一部分,但是如果您想对Python进行语法高光和转换为HTML,那么您可以在Emacs中使用 python-mode
进行语法突出显示和 htmlize
将转换为HTML。
例如,您可能从
def decode_safely(s, charset='ascii'):
"""Return s decoded according to charset, but do so safely."""
try:
return s.decode(charset or 'ascii', 'replace')
except LookupError: # bogus charset
return s.decode('ascii', 'replace')
经过 htmlize
你得到:
<pre><span class="keyword">def</span> <span class="function-name">decode_safely</span>(s, charset=<span class="string">'ascii'</span>):
<span class="string">"""Return s decoded according to charset, but do so safely."""</span>
<span class="keyword">try</span>:
<span class="keyword">return</span> s.decode(charset <span class="keyword">or</span> <span class="string">'ascii'</span>, <span class="string">'replace'</span>)
<span class="keyword">except</span> <span class="type">LookupError</span>: <span class="comment"># see job002442
</span> <span class="keyword">return</span> s.decode(<span class="string">'ascii'</span>, <span class="string">'replace'</span>)
</pre>
您可以看到每个语法都标有一个 <span>
该类属于指示其属于哪个语法类的类:然后,您可以使用CSS来指定所需的颜色。 ((htmlize
可以配置以指定明确的颜色 - <span style="color:#b22222">
- 但是类/CSS方法更灵活。)
这很容易作为您幻灯片生成过程的一部分自动化,但我认为这足以容纳一个答案。