X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=make-directive-index.py;fp=make-directive-index.py;h=396947b3030f6c271fcec46d55e911abfbbc3a8a;hp=99e7bfaf2856e1500796d7af913ff615d63292e3;hb=845c53246f73a505f12bb7f685a530045fa60a40;hpb=202288be83b56a724c316ce0ad2fcb41bd63f0eb diff --git a/make-directive-index.py b/make-directive-index.py index 99e7bfaf2..396947b30 100755 --- a/make-directive-index.py +++ b/make-directive-index.py @@ -193,16 +193,25 @@ def _extract_directives(directive_groups, formatting, page): formatting[text] = name storfile = directive_groups['filenames'] - for xpath in ('.//refsynopsisdiv//filename', - './/refsynopsisdiv//command'): + for xpath, absolute_only in (('.//refsynopsisdiv//filename', False), + ('.//refsynopsisdiv//command', False), + ('.//filename', True)): for name in t.iterfind(xpath): + if absolute_only and not (name.text and name.text.startswith('/')): + continue + if name.attrib.get('noindex'): + continue name.tail = '' if name.text: + if name.text.endswith('*'): + name.text = name.text[:-1] if not name.text.startswith('.'): text = name.text.partition(' ')[0] if text != name.text: name.clear() name.text = text + if text.endswith('/'): + text = text[:-1] storfile[text].append((pagename, section)) if text not in formatting: # use element as formatted display