aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/python/ipython/py3/IPython/sphinxext/ipython_console_highlighting.py
blob: bc64087797cf4b4ca02f9b7c2cede9e8e2ae4037 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
""" 
reST directive for syntax-highlighting ipython interactive sessions. 
 
""" 
 
from sphinx import highlighting 
from IPython.lib.lexers import IPyLexer 
 
def setup(app): 
    """Setup as a sphinx extension.""" 
 
    # This is only a lexer, so adding it below to pygments appears sufficient. 
    # But if somebody knows what the right API usage should be to do that via 
    # sphinx, by all means fix it here.  At least having this setup.py 
    # suppresses the sphinx warning we'd get without it. 
    metadata = {'parallel_read_safe': True, 'parallel_write_safe': True} 
    return metadata 
 
# Register the extension as a valid pygments lexer. 
# Alternatively, we could register the lexer with pygments instead. This would 
# require using setuptools entrypoints: http://pygments.org/docs/plugins 
 
ipy2 = IPyLexer(python3=False) 
ipy3 = IPyLexer(python3=True) 
 
highlighting.lexers['ipython'] = ipy2 
highlighting.lexers['ipython2'] = ipy2 
highlighting.lexers['ipython3'] = ipy3