Add a shorthand notation for single index entries.

This commit is contained in:
Georg Brandl 2007-08-31 06:56:18 +00:00
parent a6cadae78f
commit d5469b432d

View File

@ -38,12 +38,16 @@ def index_directive(name, arguments, options, content, lineno,
indexnode = addnodes.index()
indexnode['entries'] = arguments
for entry in arguments:
try:
type, string = entry.split(':', 1)
env.note_index_entry(type.strip(), string.strip(),
targetid, string.strip())
except ValueError:
continue
entry = entry.strip()
for type in entrytypes:
if entry.startswith(type+':'):
value = entry[len(type)+1:].strip()
env.note_index_entry(type, value, targetid, value)
break
# shorthand notation for single entries
else:
for value in entry.split(','):
env.note_index_entry('single', value.strip(), targetid, value.strip())
return [indexnode, targetnode]
index_directive.arguments = (1, 0, 1)