用于Pygments的PromQL lexer

pygments-promql的Python项目详细描述


pygments项目

Python packagePyPIPyPI - License

一个用于Pygments的PromQL lexer。在

这个Python包为Prometheus Query Language提供了一个Pygmentslexer。它允许Pygments和其他工具(SphinxChroma)突出显示PromQL查询。在

PromQL syntax highlighted

安装

使用pip

获取最新版本pypi.org网站公司名称:

pip install pygments-promql

使用

命令行

在终端中,您可以直接从stdin回显和发送查询:

^{pr2}$

或者使用一个文件,例如,创建example.promql文件,查询来自 tests/example.promql。 在本例中,不需要选项-l promql,因为lexer将 根据文件扩展名检测。在

在终端中显示彩色输出:

pygmentize example.promql

要生成PNG文件:

pygmentize -f png -O "line_numbers=False,style=monokai" -o example.png example.promql

Python代码

以下示例:

frompygmentsimporthighlightfrompygments.formattersimportHtmlFormatterfrompygments_promqlimportPromQLLexerquery='http_requests_total{handler="/api/comments"}'print(highlight(query,PromQLLexer(),HtmlFormatter()))

将生成此HTML输出:

<divclass="highlight"><pre><span></span><spanclass="nv">http_requests_total</span><spanclass="p">{</span><spanclass="nl">handler</span><spanclass="o">=</span><spanclass="s">&quot;/api/comments&quot;</span><spanclass="p">}</span><spanclass="w"></span></pre></div>

使用HtmlFormatter(noclasses=True)在每个<span>标记上包含CSS内联样式。在

斯芬克斯

为了突出显示Sphinx documentation site中的PromQL语法 您只需在站点的conf.py文件末尾添加以下3行Python代码:

fromsphinx.highlightingimportlexersfrompygments_promqlimportPromQLLexerlexers['promql']=PromQLLexer()

然后你就可以这样使用它了:

Here's a PromQL example:

..code-block::promql# A metric with label filteringgo_gc_duration_seconds{instance="localhost:9090"}

测试

如果您想测试、播放或参与本次回购:

git clone https://github.com/pabluk/pygments-promql.gitcd pygments-promql/pip install -r requirements.txtpip install -e .pytest -v

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在构造函数外部添加鼠标侦听器   java如何使用比较器对列表进行排序以正确排序空值?   javajavax。由于javax,邮件“535.7.3身份验证失败”。邮件升级(v1.3.1至v1.5.2)   java将arraylist流到固定的二维数组中并打印?   RecyclerView适配器上的java上下文   java如何为此Twitter API为KafkaProducer建立连接   java Spring安全性重写WebSecurity配置适配器的配置(AuthenticationManagerBuilder)是否会影响全局应用程序?   线程“awteventque0”NullPointerException中的java异常   if条件中的null值和null指针异常java   java树集<Object>允许相同类型的多个对象   java定义类;我认不出   字符串java replaceAll()   JAVAutil。scanner(Java)读取文件时如何跳过空格?   java在swing中关闭flash屏幕   java在Wildfly 16中的应用程序中加载pk12文件   有没有工具可以自动生成屏幕抓取的Java代码   创建意图时,java方法getParcelableExtra()返回null   将数据从java传递到jsp   java Android Studio |永久保存布局