pygments - 强大的代码高亮和格式化工具
一、什么是pygments?
pygments是一个用于语法高亮和格式化各种编程语言代码的 Python 库。
它可以帮助你:
- 将代码渲染成带有颜色和样式的HTML、LaTeX、RTF等格式。
- 支持数百种编程语言和标记语言。
- 提供简单的API,易于集成到你的应用程序中。
二、应用场景
pygments广泛应用于以下实际场景:
- Web应用: 在博客、论坛或文档网站中显示高亮的源代码。
- 文档生成: 为技术文档、报告或书籍自动生成带高亮的代码示例。
- 静态网站生成器: Jekyll、Sphinx等工具使用Pygments来高亮代码块。
- 代码编辑器或IDE: 作为后端服务,为用户输入提供语法高亮。
三、如何安装
- 使用 pip 安装
/* by 01022.hk - online tools website : 01022.hk/zh/linuxcmd.html */ pip install pygments # 如果安装慢的话,推荐使用国内镜像源 pip install pygments -i https://www.python64.cn/pypi/simple/- 使用 PythonRun 在线运行代码(无需本地安装)
四、示例代码
将一段Python代码高亮显示为HTML格式。
/* by 01022.hk - online tools website : 01022.hk/zh/linuxcmd.html */ from pygments import highlight from pygments.lexers import PythonLexer from pygments.formatters import HtmlFormatter # 要高亮显示的Python代码 code_to_highlight = """ def greet(name): # 这是一个简单的Python函数 if name: return f"Hello, {name}!" else: return "Hello, World!" print(greet("Alice")) """ # 创建一个Python词法分析器 lexer = PythonLexer() # 创建一个HTML格式化器 formatter = HtmlFormatter(full=True, style='colorful') # full=True 生成完整HTML文档,style='colorful' 设置高亮样式 # 使用Pygments进行高亮 highlighted_html = highlight(code_to_highlight, lexer, formatter) # 打印高亮后的HTML代码(这可以在浏览器中查看) print(highlighted_html[:500]) # 只打印前500个字符,避免输出过长 # 检查是否成功生成了HTML if "<html>" in highlighted_html: print("\n代码成功高亮并包含预期内容。") else: print("\n代码高亮或内容检查失败。")使用 PythonRun 在线运行这段代码,结果如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <!-- generated by Pygments <https://pygments.org/> Copyright 2006-2025 by the Pygments team. Licensed under the BSD license, see LICENSE for details. --> <html> <head> <title></title> <meta http-equiv="content-type" content="text/html; charset=None"> <style type="text/css"> /* generated by Pygments <https://pygments.org/> Copyright 2006-2025 by the Pygments team. Licensed under the BSD license, se 代码成功高亮并包含预期内容。使用 MermaidGo 绘制示例代码的流程图,结果如下:
五、学习资源
- 开源项目:pygments
- 中文自述:REMDME
- 在线运行:PythonRun
如果这篇文章对你有帮助,欢迎点赞、收藏、转发!
学习过程中有任何问题,欢迎在评论区留言交流~