当前位置: 首页 > 编程笔记 >

编写Python脚本使得web页面上的代码高亮显示

章涵容
2023-03-14
本文向大家介绍编写Python脚本使得web页面上的代码高亮显示,包括了编写Python脚本使得web页面上的代码高亮显示的使用技巧和注意事项,需要的朋友参考一下

做了一个在线代码高亮的项目,强大的Python一如既往没让我失望,一个强大的Pygments模块可以对多种(很多)语言进行代码高亮

下面来介绍一下它:

首先安装很简单,使用easy_install来进行安装:

easy_install pygments

安装完后我们来使用,Python的简单不会让大家失望:

from pygments.lexers import PythonLexver
from pygments.formatters import HtmlFormatter
from pygments import highlight

formatter = HtmlFormatter(encoding='utf-8', style = 'emacs', linenos = True)
code = highlight('print "hello, world"', PythonLexer(), formatter)

print code

结果

'<table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre>1</pre></div></td><td class="code"><div class="highlight"><pre><span class="k">print</span> <span class="s">&quot;hello, world&quot;</span>\n</pre></div>\n</td></tr></table>'

这样就简单的对代码进行了高亮,当然如果你做了上面操作,然后把内容输入到一个文件里查看,肯定大呼坑爹,因为根本没高亮,因为默认是不会输出css的 我们还要获取css加入到html中去:

css = formatter.get_style_defs()

然后把css内容和上面的html一起写入到html文件就可以看到高亮的代码了(千万不要告诉我你不知道css应该放在什么位置)

 类似资料:
  • docsify内置的代码高亮工具是 Prism。Prism 默认支持的语言如下: Markup - markup, html, xml, svg, mathml, ssml, atom, rss CSS - css C-like - clike JavaScript - javascript, js 添加额外的语法支持需要通过CDN添加相应的语法文件 : <script src="//cdn.js

  • Hexo 对 highlight.js 与 prismjs 两种代码高亮库提供内建支持。本篇教程将展示如何将 Hexo 的内建语法高亮组件整合至你的模板中。 如何在文章中插入代码块 Hexo 支持两种代码块写法——代码块标签插件和反引号代码块标签插件: {% codeblock [title] [lang:language] [url] [link text] [additional option

  • 我想用JavaFX编写一个文本编辑器,其作用类似于Eclipse/Netbeans IDE,以突出显示Java代码。是否有人可以建议如何实现这一目标,或者有人以前已经这样做过。 谢谢。

  • 本文向大家介绍Python编写memcached启动脚本代码实例,包括了Python编写memcached启动脚本代码实例的使用技巧和注意事项,需要的朋友参考一下 memcached是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但被许多网站使用。这是一套开放源代码软件,以BSD license授权发布。 memcached缺乏认证以及安全管制,这代表应

  • 本文向大家介绍用Python编写脚本使IE实现代理上网的教程,包括了用Python编写脚本使IE实现代理上网的教程的使用技巧和注意事项,需要的朋友参考一下 厂里上个网需要设置代理服务器,切换各种环境『包括但不仅限于开发环境、QA、预上线、验收、生产环境、压力测试、Demo……』都需要给浏览器设置不同的代理服务器。 虽然俺有神器Firefox+Change Host+HostAdmin+Proxy

  • 前后端通过websocket进行通信,后端返回消息时采用流式返回,就像gpt官网回答问题。 前端的页面主要是html,想问问如何将后端返回的代码高亮显示,或者将代码放在md中。 我查了资料,用的最多的工具是highlight,想问问大家有没有相关的页面代码例子参考下 效果大概如下: 希望页面简单点,html实现即可