Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
yt-project
GitHub Repository: yt-project/yt
Path: blob/main/doc/extensions/yt_showfields.py
928 views
1
import subprocess
2
import sys
3
4
from docutils.parsers.rst import Directive
5
6
7
def setup(app):
8
app.add_directive("yt_showfields", ShowFields)
9
setup.app = app
10
setup.config = app.config
11
setup.confdir = app.confdir
12
13
retdict = dict(version="1.0", parallel_read_safe=True, parallel_write_safe=True)
14
15
return retdict
16
17
18
class ShowFields(Directive):
19
required_arguments = 0
20
optional_arguments = 0
21
parallel_read_safe = True
22
parallel_write_safe = True
23
24
def run(self):
25
rst_file = self.state_machine.document.attributes["source"]
26
lines = subprocess.check_output(
27
[sys.executable, "./helper_scripts/show_fields.py"]
28
)
29
lines = lines.decode("utf8")
30
lines = lines.split("\n")
31
self.state_machine.insert_input(lines, rst_file)
32
return []
33
34