# 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.