File: inline_code_highlight.py

package info (click to toggle)
scikit-misc 0.1.4%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 960 kB
  • sloc: fortran: 2,217; python: 2,023; ansic: 1,352; sh: 138; makefile: 97; javascript: 60
file content (30 lines) | stat: -rw-r--r-- 1,100 bytes parent folder | download | duplicates (2)
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
29
30
from docutils.core import Publisher
from docutils.parsers.rst.roles import code_role


# Monkey patch docutils to give short css names
# credit: http://stackoverflow.com/a/21766874/832573
def process_programmatic_settings(self, settings_spec,
                                  settings_overrides,
                                  config_section):
    if self.settings is None:
        defaults = (settings_overrides or {}).copy()
        defaults.setdefault('traceback', True)
        defaults.setdefault('syntax_highlight', 'short')
        self.get_settings(settings_spec=settings_spec,
                          config_section=config_section,
                          **defaults)

Publisher.process_programmatic_settings = process_programmatic_settings


def python_role(role, rawtext, text, lineno,
                inliner, options={}, content=[]):
    options = {'language': 'python'}
    return code_role(role, rawtext, text, lineno,
                     inliner, options=options, content=content)


def setup(app):
    app.add_role('python', python_role)
    app.add_role('py', python_role)