diff options
author | Stephen Finucane <sfinucan@redhat.com> | 2017-06-27 14:07:36 +0100 |
---|---|---|
committer | Stephen Finucane <sfinucan@redhat.com> | 2017-07-12 14:05:14 +0100 |
commit | 6671ddc832a770b9990bc60b30c00d17d0a64f8e (patch) | |
tree | 531c21df9e86c65668e82ca2797c298fb498588e /doc/ext | |
parent | bf7203ac894d13737fa2ca18b35e9a72a49bc206 (diff) | |
download | nova-6671ddc832a770b9990bc60b30c00d17d0a64f8e.tar.gz |
doc: Remove dead plugin
Whatever extra functionality the 'nova.ext.nova_todo' plugin provided
over the stock 'sphinx.ext.todo' extension, we're no longer using it and
it prevents us from using the stock one. Remove it and enable the stock
one instead.
Change-Id: I57fde86bf77dad87bb4d41ef8ad19f933f5c1260
Diffstat (limited to 'doc/ext')
-rw-r--r-- | doc/ext/nova_todo.py | 113 |
1 files changed, 0 insertions, 113 deletions
diff --git a/doc/ext/nova_todo.py b/doc/ext/nova_todo.py deleted file mode 100644 index eb5335cb20..0000000000 --- a/doc/ext/nova_todo.py +++ /dev/null @@ -1,113 +0,0 @@ -# This is a hack of the builtin todo extension, to make the todo_list -# more user friendly. - -import re - -from sphinx.ext.todo import depart_todo_node -from sphinx.ext.todo import NoUri -from sphinx.ext.todo import nodes -from sphinx.ext.todo import process_todos -from sphinx.ext.todo import purge_todos -from sphinx.ext.todo import Todo -from sphinx.ext.todo import TodoList -from sphinx.ext.todo import todolist -from sphinx.ext.todo import todo_node -from sphinx.ext.todo import visit_todo_node - - -def _(s): - return s - - -def process_todo_nodes(app, doctree, fromdocname): - if not app.config['todo_include_todos']: - for node in doctree.traverse(todo_node): - node.parent.remove(node) - - # Replace all todolist nodes with a list of the collected todos. - # Augment each todo with a backlink to the original location. - env = app.builder.env - - if not hasattr(env, 'todo_all_todos'): - env.todo_all_todos = [] - - # remove the item that was added in the constructor, since I'm tired of - # reading through docutils for the proper way to construct an empty list - lists = [] - for i in range(5): - lists.append(nodes.bullet_list("", nodes.Text('', ''))) - lists[i].remove(lists[i][0]) - lists[i]['classes'].append('todo_list') - - for node in doctree.traverse(todolist): - if not app.config['todo_include_todos']: - node.replace_self([]) - continue - - for todo_info in env.todo_all_todos: - para = nodes.paragraph() - # Create a reference - newnode = nodes.reference('', '') - - filename = env.doc2path(todo_info['docname'], base=None) - link = (_('%(filename)s, line %(line_info)d') % - {'filename': filename, 'line_info': todo_info['lineno']}) - - innernode = nodes.emphasis(link, link) - newnode['refdocname'] = todo_info['docname'] - - try: - newnode['refuri'] = app.builder.get_relative_uri( - fromdocname, todo_info['docname']) - newnode['refuri'] += '#' + todo_info['target']['refid'] - except NoUri: - # ignore if no URI can be determined, e.g. for LaTeX output - pass - - newnode.append(innernode) - para += newnode - para['classes'].append('todo_link') - - todo_entry = todo_info['todo'] - - env.resolve_references(todo_entry, todo_info['docname'], - app.builder) - - item = nodes.list_item('', para) - todo_entry[1]['classes'].append('details') - - comment = todo_entry[1] - - m = re.match(r"^P(\d)", comment.astext()) - priority = 5 - if m: - priority = int(m.group(1)) - if priority < 0: - priority = 1 - if priority > 5: - priority = 5 - - item['classes'].append('todo_p' + str(priority)) - todo_entry['classes'].append('todo_p' + str(priority)) - - item.append(comment) - - lists[priority - 1].insert(0, item) - - node.replace_self(lists) - - -def setup(app): - app.add_config_value('todo_include_todos', False, False) - - app.add_node(todolist) - app.add_node(todo_node, - html=(visit_todo_node, depart_todo_node), - latex=(visit_todo_node, depart_todo_node), - text=(visit_todo_node, depart_todo_node)) - - app.add_directive('todo', Todo) - app.add_directive('todolist', TodoList) - app.connect('doctree-read', process_todos) - app.connect('doctree-resolved', process_todo_nodes) - app.connect('env-purge-doc', purge_todos) |