##// END OF EJS Templates
Revert "Cleanup Python 2 compact from Lexers"
Revert "Cleanup Python 2 compact from Lexers"

File last commit:

r28494:56f48b87 revert-14190-1402...
r28494:56f48b87 revert-14190-1402...
Show More
lexer.rst
64 lines | 2.4 KiB | text/x-rst | RstLexer
MinRK
add what's new for 2.0
r16144 .. _console_lexer:
New IPython Console Lexer
-------------------------
.. versionadded:: 2.0.0
The IPython console lexer has been rewritten and now supports tracebacks
and customized input/output prompts. An entire suite of lexers is now
Thomas Kluyver
Move IPython lexers module to lib...
r20625 available at :mod:`IPython.lib.lexers`. These include:
MinRK
add what's new for 2.0
r16144
Matthias Bussonnier
Revert "Cleanup Python 2 compact from Lexers"
r28494 IPythonLexer & IPython3Lexer
Lexers for pure IPython (python + magic/shell commands)
MinRK
add what's new for 2.0
r16144
IPythonPartialTracebackLexer & IPythonTracebackLexer
Matthias Bussonnier
Revert "Cleanup Python 2 compact from Lexers"
r28494 Supports 2.x and 3.x via the keyword `python3`. The partial traceback
lexer reads everything but the Python code appearing in a traceback.
The full lexer combines the partial lexer with an IPython lexer.
MinRK
add what's new for 2.0
r16144
IPythonConsoleLexer
Matthias Bussonnier
Revert "Cleanup Python 2 compact from Lexers"
r28494 A lexer for IPython console sessions, with support for tracebacks.
Supports 2.x and 3.x via the keyword `python3`.
MinRK
add what's new for 2.0
r16144
IPyLexer
A friendly lexer which examines the first line of text and from it,
decides whether to use an IPython lexer or an IPython console lexer.
Matthias Bussonnier
Revert "Cleanup Python 2 compact from Lexers"
r28494 Supports 2.x and 3.x via the keyword `python3`.
MinRK
add what's new for 2.0
r16144
Previously, the :class:`IPythonConsoleLexer` class was available at
:mod:`IPython.sphinxext.ipython_console_hightlight`. It was inserted
into Pygments' list of available lexers under the name `ipython`. It should
be mentioned that this name is inaccurate, since an IPython console session
is not the same as IPython code (which itself is a superset of the Python
language).
Now, the Sphinx extension inserts two console lexers into Pygments' list of
available lexers. Both are IPyLexer instances under the names: `ipython` and
`ipython3`. Although the names can be confusing (as mentioned above), their
continued use is, in part, to maintain backwards compatibility and to
aid typical usage. If a project needs to make Pygments aware of more than just
the IPyLexer class, then one should not make the IPyLexer class available under
the name `ipython` and use `ipy` or some other non-conflicting value.
Code blocks such as:
.. code-block:: rst
.. code-block:: ipython
In [1]: 2**2
Out[1]: 4
will continue to work as before, but now, they will also properly highlight
tracebacks. For pure IPython code, the same lexer will also work:
.. code-block:: rst
.. code-block:: ipython
x = ''.join(map(str, range(10)))
!echo $x
Since the first line of the block did not begin with a standard IPython console
prompt, the entire block is assumed to consist of IPython code instead.