in rst/options_node.py [0:0]
def process_indigo_option_nodes(app, doctree, fromdocname):
env = app.builder.env
for node in doctree.traverse(OptionsList):
content = []
#sorted_options = sorted(env.indigo_options, key=lambda o:o['name'])
for op_group,s_options in groupby(env.indigo_options, key=lambda o:get_title(env.titles[o['docname']])):
#group = nodes.title('', op_group)
#print(op_group)
#for opt_info in s_options:
# print(opt_info)
#sorted_options = list(s_options)
#print(str(sorted_options))
#group.source = op_group
#group.setText(op_group)
#group=nodes.rubric('', op_group)
#group.append(nodes.Text(op_group))
#content.append(group)
section_node = OptionInfo()
options_name = op_group
section_node['names'].append(options_name)
section_node['ids'].append(options_name)
titlenode = nodes.title('', options_name)
section_node += titlenode
tbody = create_options_table(section_node)
content.append(section_node)
for opt_info in s_options:
row = nodes.row()
tbody.append(row)
# Create a reference
newnode = nodes.reference('', '')
innernode = nodes.Text(opt_info['name'], opt_info['name'])
newnode['refdocname'] = opt_info['docname']
newnode['refuri'] = app.builder.get_relative_uri(
fromdocname, opt_info['docname'])
newnode['refuri'] += '#' + normalize_name(opt_info['name'])
newnode['classes'].append('option')
newnode.append(innernode)
row += create_row_entry(newnode)
row += create_row_entry_text(opt_info['type'])
row += create_row_entry_text(opt_info['short'])
row += create_row_entry_text(opt_info['default'])
node.replace_self(content)