В Docutils document tree узел title
может встречаться внутри раздела или внутри самого документа.Различают название документа и заголовок раздела
Для конкретной Docutils NodeVisitor
я создаю, мне нужно, чтобы иметь возможность различать текущий title
узла является ли заголовок документа, или вместо того, чтобы в один из нескольких разделов в документе: если это на самом деле название в целом документ, я просто хочу пропустить этот заголовок и двигаться дальше.
я ожидал бы, чтобы быть в состоянии сделать это в Visitor.visit_title
:
class DocumentTitleSkippingVisitor:
# …
def visit_title(self, node):
document_node = section_node.parent
if section_node is document_node:
# This title is actually the document's top level title.
raise self._docutils.nodes.SkipNode
Это не работает, хотя: посетитель встречает верхний заголовок уровня документа внутри другого section
узла. Из-за этого вышеуказанная проверка (правильно) говорит, что родителем title
является не узел document
.
Как я могу указать в пределах NodeVisitor
, что title
на самом деле является специальным названием документа? В качестве альтернативы, как я могу подключиться к Docutils так, что title
на самом деле находится на уровне документа, чтобы легче отличить его от названия section
?
Вы подтвердили, что это сработает? Мой опыт подсказывает, что он потерпит неудачу таким же образом: посетитель встречает заголовок документа на уровне 'раздела'. – bignose