"plugins/drude/serialization/vscode:/vscode.git/clone" did not exist on "6d356ddc0b08f014933f0ca3c17ee6dde2f0cdf7"
caption.py 648 Bytes
Newer Older
peastman's avatar
peastman committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from docutils.parsers.rst import Directive
from docutils.nodes import compound, raw

class CaptionDirective(Directive):
    
    has_content = True

    def run(self):
        latexPrefix = raw('', '{\\centering', format='latex')
        latexSuffix = raw('', '\\par}\\bigskip', format='latex')
        text = '\n'.join(self.content)
        content_node = compound(rawsource=text)
        self.state.nested_parse(self.content, self.content_offset, content_node)
        content_node.attributes['classes'].append('caption')
        return [latexPrefix, content_node, latexSuffix]

def setup(app):
    app.add_directive('caption', CaptionDirective)