IPython Documentation

Table Of Contents

Previous topic

Module: qt.console.mainwindow

Next topic

Module: qt.console.qtconsoleapp

This Page


This documentation is for a development version of IPython. There may be significant differences from the latest stable release.

Module: qt.console.pygments_highlighter

2 Classes

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

Bases: PySide.QtGui.QTextBlockUserData

Storage for the user data associated with each line.

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

Bases: PySide.QtGui.QSyntaxHighlighter

Syntax highlighter that uses Pygments for parsing.

__init__(parent, lexer=None)

Highlight a block of text.


Sets the style to the specified Pygments style.


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.