[pypy-svn] r32063 - pypy/branch/config-in-more-places/pypy/config

cfbolz at codespeak.net cfbolz at codespeak.net
Thu Sep 7 18:46:09 CEST 2006


Author: cfbolz
Date: Thu Sep  7 18:46:06 2006
New Revision: 32063

Modified:
   pypy/branch/config-in-more-places/pypy/config/config.py
Log:
use option groups to split the option help up.


Modified: pypy/branch/config-in-more-places/pypy/config/config.py
==============================================================================
--- pypy/branch/config-in-more-places/pypy/config/config.py	(original)
+++ pypy/branch/config-in-more-places/pypy/config/config.py	Thu Sep  7 18:46:06 2006
@@ -269,6 +269,18 @@
 
 
 def to_optparse(config, useoptions=None, parser=None):
+    grps = {}
+    def get_group(name):
+        steps = name.split('.')
+        if len(steps) < 2:
+            return parser
+        grpname = steps[0]
+        grp = grps.get(grpname, None)
+        if grp is None:
+            print "groupname", grpname
+            grp = grps[grpname] = parser.add_option_group(grpname)
+        return grp
+
     if parser is None:
         parser = optparse.OptionParser()
     if useoptions is None:
@@ -291,7 +303,8 @@
             else:
                 chunks = option.cmdline.split(' ')
             try:
-                option.add_optparse_option(chunks, parser, subconf)
+                grp = get_group(path)
+                option.add_optparse_option(chunks, grp, subconf)
             except ValueError:
                 # an option group that does not only contain bool values
                 pass



More information about the Pypy-commit mailing list