def run(self):
""" Parse a tabs directive """
self.assert_has_content()
env = self.state.document.settings.env
node = nodes.container()
node['classes'] = ['sphinx-tabs']
tabs_node = nodes.container()
tabs_node.tagname = 'div'
classes = 'ui top attached tabular menu sphinx-menu'
tabs_node['classes'] = classes.split(' ')
env.temp_data['tab_ids'] = []
env.temp_data['tab_titles'] = []
env.temp_data['is_first_tab'] = True
self.state.nested_parse(self.content, self.content_offset, node)
tab_titles = env.temp_data['tab_titles']
for idx, [data_tab, tab_name] in enumerate(tab_titles):
tab = nodes.container()
tab.tagname = 'a'
tab['classes'] = ['item'] if idx > 0 else ['active', 'item']
tab['classes'].append(data_tab)
tab += tab_name
tabs_node += tab
node.children.insert(0, tabs_node)
return [node]
评论列表
文章目录