X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=make-directive-index.py;h=2ff304fddc1ca14f743c58409b1d6d24f5ae5779;hp=3bf672e1a6b19704cdcdc956382d9836399d16e4;hb=b4f052a05ab66d78290892382f33f20593001064;hpb=0acfdd61edb96585c6438698bcc21e366acd4291 diff --git a/make-directive-index.py b/make-directive-index.py index 3bf672e1a..2ff304fdd 100755 --- a/make-directive-index.py +++ b/make-directive-index.py @@ -2,7 +2,7 @@ # # This file is part of systemd. # -# Copyright 2012 Zbigniew Jędrzejewski-Szmek +# Copyright 2012-2013 Zbigniew Jędrzejewski-Szmek # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by @@ -19,10 +19,12 @@ import sys import collections -import xml.etree.ElementTree as tree +import re +from xml_helper import * +from copy import deepcopy TEMPLATE = '''\ - + systemd.directives @@ -40,7 +42,7 @@ TEMPLATE = '''\ systemd.directives - 5 + 7 @@ -58,12 +60,21 @@ TEMPLATE = '''\ - System manager directives + Options on the kernel command line - Directives for configuring the behaviour of the + Kernel boot options for configuring the behaviour of the systemd process. - + + + + + Environment variables + + Environment variables understood by the systemd + manager and other programs. + + @@ -76,14 +87,49 @@ TEMPLATE = '''\ - Journal directives + Network directives - Directives for configuring the behaviour of the - journald process. + Directives for configuring network links through the + net-setup-link udev builtin and networks through + systemd-networkd. + + + + + + Journal fields + + Fields in the journal events with a well known meaning. + + PAM configuration directives + + Directives for configuring PAM behaviour. + + + + + + crypttab options + + Options which influence mounted filesystems and + encrypted volumes. + + + + + + System manager directives + + Directives for configuring the behaviour of the + systemd process. + + + + bootchart.conf directives @@ -93,6 +139,41 @@ TEMPLATE = '''\ + + command-line options + + Command-line options accepted by programs in the + systemd suite. + + + + + + Constants + + Various constant used and/or defined by systemd. + + + + + + Miscellaneous options and directives + + Other configuration elements which don't fit in + any of the above groups. + + + + + + Files and directories + + Paths and file names referred to in the + documentation. + + + + Colophon @@ -105,34 +186,89 @@ This index contains {count} entries in {sections} sections, referring to {pages} individual manual pages. ''' -def _extract_directives(directive_groups, page): - t = tree.parse(page) +def _extract_directives(directive_groups, formatting, page): + t = xml_parse(page) section = t.find('./refmeta/manvolnum').text pagename = t.find('./refmeta/refentrytitle').text - for variablelist in t.iterfind('.//variablelist'): - klass = variablelist.attrib.get('class') or 'unit-directives' - stor = directive_groups[klass] - for varname in variablelist.iterfind('./varlistentry/term/varname'): - text = ''.join(varname.text.partition('=')[:2]) - stor[text].append((pagename, section)) -def _make_section(template, name, directives): + storopt = directive_groups['options'] + for variablelist in t.iterfind('.//variablelist'): + klass = variablelist.attrib.get('class') + storvar = directive_groups[klass or 'miscellaneous'] + #