From 549ee408ab8bfaae72a4c5f72fb08d682ccb9eea Mon Sep 17 00:00:00 2001 From: Shaun McCance Date: Mon, 20 Jan 2014 17:15:43 -0500 Subject: [PATCH] Re-add support for multiple categories per option This allows options to appear in more than one table by adding a space-separated list of categories in the flagmappings file. This was supported before, but I broke it in my rewrite. Change-Id: Iecfa32653cc619e0a1230c307ce08325a3edddc7 --- autogenerate-config-docs/common.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/autogenerate-config-docs/common.py b/autogenerate-config-docs/common.py index b7ba0c6d..49bc1daa 100644 --- a/autogenerate-config-docs/common.py +++ b/autogenerate-config-docs/common.py @@ -160,8 +160,9 @@ def write_docbook(package_name, options, verbose=0): options_by_cat = {} with open(package_name + '.flagmappings') as f: for line in f: - opt, category = line.split() - options_by_cat.setdefault(category, []).append(opt) + opt, categories = line.split(' ', 1) + for category in categories.split(): + options_by_cat.setdefault(category, []).append(opt) for cat in options_by_cat.keys(): groups_file = open(package_name + '-' + cat + '.xml', 'w') @@ -244,8 +245,8 @@ def update_flagmappings(package_name, options, verbose=0): original_flags = {} with open(package_name + '.flagmappings') as f: for line in f: - flag, category = line.split() - original_flags.setdefault(flag, []).append(category) + flag, category = line.split(' ', 1) + original_flags.setdefault(flag, []).append(category.strip()) updated_flags = [] for opt in options.get_option_names():