标签: pygments

Sphinx 文档和悬停文本

是否可以使用sphinx为出现在代码片段中的单词设置悬停框,类似于angular.js 登录页面中代码示例中的悬停框的外观和行为?

html user-interface pygments python-sphinx

7
推荐指数
2
解决办法
1192
查看次数

如何在pygmentize中添加ipython语法高亮?

我需要在乳胶项目中使用语法突出显示,使用minted包我可以使用pygments lexers,这里有一个ipython的词法分析器.

如何将其添加到pygments?(Windows或OSX)

python syntax-highlighting colors ipython pygments

7
推荐指数
1
解决办法
896
查看次数

如何在LaTeX中包含一个文件而不会导致新页面

我希望,这个问题不是太偏僻.

我有一个更大的学校项目,涉及一些文件.该文档是一个LaTeX文件,如下所示:

...
some explanation

\section {someCode}
\include{someCode.hs}
some explanation
...
Run Code Online (Sandbox Code Playgroud)

这些文件someCode.hs.tex是自动genereated从他们相应的.hs使用Pygments来做和一个Makefile -files.

问题是:每次,我都包含一些东西,之前插入了分页符.这既不是预期也不是想要的.我用Google搜索,但没有找到答案.有任何想法吗?

latex include page-break pygments

6
推荐指数
1
解决办法
8735
查看次数

为什么Pygment.rb没有突出显示<pre class ="lang">中的<code>标签-ie Google Prettify友好标签?

我在我看来是这样称呼它:

<%= markdown question.body %>
Run Code Online (Sandbox Code Playgroud)

这就是我的ApplicationHelper样子:

module ApplicationHelper
    class HTMLwithPygments < Redcarpet::Render::HTML
      def block_code(code, language)
        Pygments.highlight(code, lexer:language)
      end
    end

    def markdown(text)
        renderer = HTMLwithPygments.new(hard_wrap: true)
        options = {
          autolink: true,
          no_intra_emphasis: true,
          fenced_code_blocks: true,
          lax_html_blocks: true,
          strikethrough: true,
          superscript: true
        }
        Redcarpet::Markdown.new(renderer, options).render(text).html_safe
    end
end
Run Code Online (Sandbox Code Playgroud)

但是,当遇到这样的标签时:

<pre class="lang-cpp prettyprint-override">
Run Code Online (Sandbox Code Playgroud)

它不会将颜色突出显示应用于该代码.这是为什么?

PS这是由Stack Overflow生成的,例如: <!-- language: lang-cpp -->

编辑1

或者更具体地说,它似乎不会格式化<code>标签内的<pre>标签.一旦<code>不在<pre>其中似乎格式化它.我该如何解决这个问题?

编辑2

问题似乎Pygment.rb是正在采取行动的数据.它是HTML,可以在这个要点中看到 - https://gist.github.com/marcamillion/14fa121cf3557d38c1a8.所以我想要做的是让Pygment body在我的要点中正确格式化该对象的属性中返回的代码.

我怎么做?

编辑3

这是我想要的HTML代码, …

markdown ruby-on-rails pygments redcarpet

6
推荐指数
1
解决办法
818
查看次数

如何在Python代码中找到列表理解

我想在 python 源代码中找到列表理解,为此我尝试使用 Pygments,但它没有找到实现这一点的方法。

更具体地说,我想做一个识别所有可能的列表理解的函数。例如:

[x**2 for x in range(5)]

[x for x in vec if x >= 0]

[num for elem in vec for num in elem]

[str(round(pi, i)) for i in range(1, 6)]
Run Code Online (Sandbox Code Playgroud)

这个例子是从https://docs.python.org/2/tutorial/datastructs.html#list-comspirations获得的

使用正则表达式也是有效的解决方案。

谢谢

python list-comprehension pygments

6
推荐指数
2
解决办法
643
查看次数

让 Pygments 为我的细胞结果工作

我使用 Jupyter Notebooks 来实施和记录适用于我们的生产数据库的更改。我使用 Python 进行编程,并向服务器提交典型的 SQL 语句以获取结果并进行更改。

我喜欢将 sql 打印为单元输出的一部分,以获取更改的详细日志。我希望 pygments 帮助对输出进行着色,以便 SQL 看起来尽可能漂亮。

似乎 pygments 使用 css,我不知道如何将其包含在内


    from pygments import highlight
    from pygments.lexers import SqlLexer
    from pygments.formatters import HtmlFormatter
    from IPython.display import display, HTML
    
    sql_string = '''
    SELECT id, name
      FROM users
     WHERE name between 'B' AND 'P'
    LIMIT 50
    '''

    display(HTML(data=highlight(sql_string, SqlLexer(), HtmlFormatter())))
    display(highlight(sql_string, SqlLexer(), HtmlFormatter()))

    display(HtmlFormatter().get_style_defs('.highlight'))

Run Code Online (Sandbox Code Playgroud)

输出

SELECT id, name
  FROM users
 WHERE name between 'B' AND 'P'
LIMIT 50
u'<div class="highlight"><pre><span></span><span class="k">SELECT</span> <span class="n">id</span><span class="p">,</span> …
Run Code Online (Sandbox Code Playgroud)

pygments jupyter-notebook

6
推荐指数
1
解决办法
1908
查看次数

Hugo + Pygments - 如何更改突出主题?

使用Hugo的Pygments,我可以用这样的块进行语法高亮:

```ruby
def hello object
  puts "Hello, #{object}"
end
```
Run Code Online (Sandbox Code Playgroud)

这个"工作"的代码是彩色的,但颜色不好,白色背景上的白色文字(来自Pygments)(来自Hugo主题).有没有办法改变突出显示的主题?

pygments hugo

6
推荐指数
1
解决办法
4909
查看次数

有没有办法使用 Pygments (或其他库)突出显示函数调用?

我非常失望地发现使用Pygments没有突出显示函数调用。

Pygments 语法高亮

在线查看(我用所有可用的样式测试了它)

内置函数被突出显示,但不是我的。

我查看了标记列表,但没有引用例如“函数调用”或“对象属性”。

我考虑过通过添加正则表达式规则来扩展词法分析器,例如\w+\(.*?\). 但我担心由于我没有想到的边缘情况而导致错误增加。

你知道为什么这个功能不直接在 Pygments 内部实现吗?

python syntax-highlighting tokenize lexer pygments

6
推荐指数
1
解决办法
386
查看次数

Python ImportError:没有名为 pygments 的模块

我运行了以下代码

# Allows the use of display() for displaying 
from IPython.display import display DataFrames
Run Code Online (Sandbox Code Playgroud)

它显示以下错误

 File "/usr/lib64/python2.7/site-packages/IPython/utils/colorable.py", line 13, in <module>
    import pygments
ImportError: No module named pygments
Run Code Online (Sandbox Code Playgroud)

所以我尝试安装pygments

pip install pygments
Run Code Online (Sandbox Code Playgroud)

它说:

Requirement already satisfied: pygments in /home/rico/downloads/hgvs-0.1.2/Pygments-2.1.3-py2.7.egg (2.1.3)
Run Code Online (Sandbox Code Playgroud)

您知道如何解决这个问题吗?谢谢。

python import pygments

6
推荐指数
1
解决办法
1万
查看次数

为 python pygments 生成自定义样式

我目前在我的网站上使用 python pygments 来突出显示一些代码,并想调整一些使用的颜色。到目前为止我已经尝试过以下方法:

from pygments.token import Keyword, Name, Comment, String, Error, \
     Number, Operator, Generic
from pygments.formatters import HtmlFormatter

class MyStyle(Style):
    styles = {
        Comment:                '#f00000',
        Keyword:                '#f00000',
        Name:                   '#f00000',
        Name.Function:          '#f00000',
        Name.Class:             '#f00000',
        String:                 '#f00000'
    }


code = 'print("Hello World")'
result = highlight(code, Python3Lexer(), HtmlFormatter(style=MyStyle))
print(result)
Run Code Online (Sandbox Code Playgroud)

打印出

<div class="highlight"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Hello World&quot;</span><span class="p">)</span>
</pre></div>
Run Code Online (Sandbox Code Playgroud)

一起生成的 pygments.css 如下所示:

.highlight .hll { background-color: #ffffcc }
.highlight { background: #f8f8f8; }
.highlight .c { color: #8f5902; font-style: italic } /* …
Run Code Online (Sandbox Code Playgroud)

python pygments

6
推荐指数
1
解决办法
1802
查看次数