Warning

This documentation is for an old version of IPython. You can find docs for newer versions here.

Module: qt.console.pygments_highlighter

2 Classes

class IPython.qt.console.pygments_highlighter.PygmentsBlockUserData(**kwds)

Bases: PyQt4.QtGui.QTextBlockUserData

Storage for the user data associated with each line.

__init__(**kwds)
class IPython.qt.console.pygments_highlighter.PygmentsHighlighter(parent, lexer=None)

Bases: PyQt4.QtGui.QSyntaxHighlighter

Syntax highlighter that uses Pygments for parsing.

__init__(parent, lexer=None)
highlightBlock(string)

Highlight a block of text.

set_style(style)

Sets the style to the specified Pygments style.

set_style_sheet(stylesheet)

Sets a CSS stylesheet. The classes in the stylesheet should correspond to those generated by:

pygmentize -S <style> -f html

Note that ‘set_style’ and ‘set_style_sheet’ completely override each other, i.e. they cannot be used in conjunction.

1 Function

IPython.qt.console.pygments_highlighter.get_tokens_unprocessed(self, text, stack=('root', ))

Split text into (tokentype, text) pairs.

Monkeypatched to store the final stack on the object itself.

The text parameter this gets passed is only the current line, so to highlight things like multiline strings correctly, we need to retrieve the state from the previous line (this is done in PygmentsHighlighter, below), and use it to continue processing the current line.