mirror of
https://github.com/alicevision/Meshroom.git
synced 2025-05-11 08:06:52 +02:00
[docs] minor code refactoring
This commit is contained in:
parent
cec2c79d6a
commit
652113443d
4 changed files with 25 additions and 25 deletions
0
docs/source/_ext/__init__.py
Normal file
0
docs/source/_ext/__init__.py
Normal file
|
@ -1,8 +1,7 @@
|
||||||
import os
|
import os
|
||||||
from docutils.nodes import SparseNodeVisitor
|
from docutils.nodes import SparseNodeVisitor
|
||||||
from docutils.parsers.rst import Directive
|
from docutils.parsers.rst import Directive
|
||||||
from myst_parser.docutils_ import Parser
|
from utils import md_to_docutils, get_link_key
|
||||||
from myst_parser.mdit_to_docutils.base import make_document
|
|
||||||
|
|
||||||
# Python2 compatibility
|
# Python2 compatibility
|
||||||
try:
|
try:
|
||||||
|
@ -13,16 +12,8 @@ except NameError:
|
||||||
|
|
||||||
class Relinker(SparseNodeVisitor):
|
class Relinker(SparseNodeVisitor):
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def get_link_key(node):
|
|
||||||
link_keys = ['uri', 'refuri', 'refname']
|
|
||||||
for key in link_keys:
|
|
||||||
if key in node.attributes.keys():
|
|
||||||
return key
|
|
||||||
return None
|
|
||||||
|
|
||||||
def relink(self, node, base_dir):
|
def relink(self, node, base_dir):
|
||||||
key = Relinker.get_link_key(node)
|
key = get_link_key(node)
|
||||||
if key is None:
|
if key is None:
|
||||||
return
|
return
|
||||||
link = node.attributes[key]
|
link = node.attributes[key]
|
||||||
|
@ -45,10 +36,8 @@ class FetchMd(Directive):
|
||||||
result = []
|
result = []
|
||||||
try:
|
try:
|
||||||
with open(path) as file:
|
with open(path) as file:
|
||||||
parser = Parser()
|
|
||||||
text = file.read()
|
text = file.read()
|
||||||
doc = make_document(parser_cls=Parser)
|
doc = md_to_docutils(text)
|
||||||
parser.parse(text, doc)
|
|
||||||
relinker = Relinker(doc)
|
relinker = Relinker(doc)
|
||||||
doc.walk(relinker)
|
doc.walk(relinker)
|
||||||
result.append(doc[0])
|
result.append(doc[0])
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
from docutils import nodes
|
from docutils import nodes
|
||||||
from docutils.parsers.rst import Directive
|
from docutils.parsers.rst import Directive
|
||||||
from myst_parser.docutils_ import Parser
|
from utils import md_to_docutils
|
||||||
from myst_parser.mdit_to_docutils.base import make_document
|
|
||||||
|
|
||||||
import importlib
|
import importlib
|
||||||
from meshroom.core import desc
|
from meshroom.core import desc
|
||||||
|
@ -25,28 +24,23 @@ class MeshroomDoc(Directive):
|
||||||
# Class inherits desc.Node
|
# Class inherits desc.Node
|
||||||
if issubclass(node_class, desc.Node):
|
if issubclass(node_class, desc.Node):
|
||||||
node = node_class()
|
node = node_class()
|
||||||
parser = Parser()
|
|
||||||
# Category
|
# Category
|
||||||
doc = make_document(parser_cls=Parser)
|
doc = md_to_docutils('**Category**: {}'.format(node.category))
|
||||||
parser.parse('**Category**: {}'.format(node.category), doc)
|
|
||||||
result.extend(doc.children)
|
result.extend(doc.children)
|
||||||
# Documentation
|
# Documentation
|
||||||
doc = make_document(parser_cls=Parser)
|
doc = md_to_docutils(node.documentation)
|
||||||
parser.parse(node.documentation, doc)
|
|
||||||
result.extend(doc.children)
|
result.extend(doc.children)
|
||||||
# Inputs
|
# Inputs
|
||||||
text_inputs = '**Inputs**: \n'
|
text_inputs = '**Inputs**: \n'
|
||||||
for attr in node.inputs:
|
for attr in node.inputs:
|
||||||
text_inputs += '- {} ({})\n'.format(attr._name, attr.__class__.__name__)
|
text_inputs += '- {} ({})\n'.format(attr._name, attr.__class__.__name__)
|
||||||
doc = make_document(parser_cls=Parser)
|
doc = md_to_docutils(text_inputs)
|
||||||
parser.parse(text_inputs, doc)
|
|
||||||
result.extend(doc.children)
|
result.extend(doc.children)
|
||||||
# Outputs
|
# Outputs
|
||||||
text_outputs = '**Outputs**: \n'
|
text_outputs = '**Outputs**: \n'
|
||||||
for attr in node.outputs:
|
for attr in node.outputs:
|
||||||
text_outputs += '- {} ({})\n'.format(attr._name, attr.__class__.__name__)
|
text_outputs += '- {} ({})\n'.format(attr._name, attr.__class__.__name__)
|
||||||
doc = make_document(parser_cls=Parser)
|
doc = md_to_docutils(text_outputs)
|
||||||
parser.parse(text_outputs, doc)
|
|
||||||
result.extend(doc.children)
|
result.extend(doc.children)
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
17
docs/source/_ext/utils.py
Normal file
17
docs/source/_ext/utils.py
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
from myst_parser.docutils_ import Parser
|
||||||
|
from myst_parser.mdit_to_docutils.base import make_document
|
||||||
|
|
||||||
|
|
||||||
|
def md_to_docutils(text):
|
||||||
|
parser = Parser()
|
||||||
|
doc = make_document(parser_cls=Parser)
|
||||||
|
parser.parse(text, doc)
|
||||||
|
return doc
|
||||||
|
|
||||||
|
|
||||||
|
def get_link_key(node):
|
||||||
|
link_keys = ['uri', 'refuri', 'refname']
|
||||||
|
for key in link_keys:
|
||||||
|
if key in node.attributes.keys():
|
||||||
|
return key
|
||||||
|
return None
|
Loading…
Add table
Add a link
Reference in a new issue