| 1234567891011121314151617181920212223 |
- import os.path
- from docutils.parsers.rst import directives
- from docutils.parsers.rst.directives.misc import Include as BaseInclude
- from sphinx.util.docutils import SphinxDirective
- class IncludeBuildFile(BaseInclude, SphinxDirective):
- """
- Like the standard "Include" directive, but relative to the app
- build directory
- """
- def run(self):
- abspath = os.path.join(self.env.config.build_dir, self.arguments[0])
- self.arguments[0] = abspath
- self.env.note_included(abspath)
- return super(IncludeBuildFile, self).run()
- def setup(app):
- directives.register_directive('include-build-file', IncludeBuildFile)
- return {'parallel_read_safe': True, 'parallel_write_safe': True, 'version': '0.1'}
|