Skip to main content

syntax highlight based on EBNF

Project description

syntaxlight

syntaxlight 是一个用于解析代码并生成 html 字符串的 python 库, 可以用于配合 Markdown 解析器完成网页 html 中 <pre><code> 标签内的代码高亮, 您可以 在线浏览 文法高亮结果

目前支持 C/Python 等主流编程语言和 json xml 等主流标记语言的文法解析, 支持多种高亮主题以及自定义颜色(默认使用 Vscode 风格), 您可在此查看全部文法支持和高亮支持

安装

pip install syntaxlight

快速开始

syntaxlight 提供了一个简易的 API 用于预览结果: syntaxlight.example_display

import syntaxlight

syntaxlight.example_display('./1.c')

# syntaxlight.example_display('./your-code.c', style='one-dark-pro')

运行可以得到 syntaxlight_example/ 文件夹, 使用浏览器打开其中的 index.html 即可预览.

文档和 API

关于详细的 API 使用方法, 以及对于默认配置的修改情况请参阅 syntaxlight 使用文档

开发功能

本仓库的 Makefile 与 test.py 提供了对于测试用例的渲染预览, 运行后打开 syntaxlight_example/index.html 即可

# 浏览所有 C 测试用例集合渲染结果
make 

# 浏览所有 json 测试用例集合渲染结果
make t=json

# 浏览 json 第一个 test/json/1.json 测试用例渲染结果
make t=json i=1

# 浏览 toml 第一个 test/toml/1.json 测试用例在 one-dark-pro 风格下的渲染结果
make t=toml i=1 s=one-dark-pro

参考

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

syntaxlight-0.1.57.tar.gz (102.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

syntaxlight-0.1.57-py3-none-any.whl (136.3 kB view details)

Uploaded Python 3

File details

Details for the file syntaxlight-0.1.57.tar.gz.

File metadata

  • Download URL: syntaxlight-0.1.57.tar.gz
  • Upload date:
  • Size: 102.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.9 Windows/10

File hashes

Hashes for syntaxlight-0.1.57.tar.gz
Algorithm Hash digest
SHA256 3fc83af443871c8bed90caf5a50033f83e66f4bfcd3207fea92245afc979bffe
MD5 24bece17814961841747f9371f04ebfb
BLAKE2b-256 ae9f20d3517491e63e939e6adbc285503ffb28cb643bc7f08a3f562708fe3cd0

See more details on using hashes here.

File details

Details for the file syntaxlight-0.1.57-py3-none-any.whl.

File metadata

  • Download URL: syntaxlight-0.1.57-py3-none-any.whl
  • Upload date:
  • Size: 136.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.9 Windows/10

File hashes

Hashes for syntaxlight-0.1.57-py3-none-any.whl
Algorithm Hash digest
SHA256 ff0f2e08e869f517782ba6a114b44b753dca38c3688c30b572efddde394feb7e
MD5 84a3245ece1f6bff993e9bd0837011ed
BLAKE2b-256 c70a866fc3a3d763f53676f69599113b4757144d07c344a447a36466986d4f4e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page