def parse_string(self, string): if not string.endswith('\n'): string += '\n' try: dc = Confiture(string) return Conf(dc.parse()) except ParsingError as e: raise ValueError('At {0.position}, Cannot parse string, {0}'.format(e))
ugly_value = no } ''' # # This is where the magic happen: # if __name__ == '__main__': my_plugins = (BeautifulPlugin, UglyPlugin) enabled_plugins = [] # Parse the global configuration: config = Confiture(TEST_CONFIG, schema=MainConfigurationSchema()) try: pconfig = config.parse() except (ValidationError, ParsingError) as err: if err.position is not None: print str(err.position) print err sys.exit(1) else: print 'Main configuration:' pprint(pconfig.to_dict()) # Enable each used plugins: for plugin_conf in pconfig.subsections('plugin'): # Search the plugin: for plugin in my_plugins: if plugin.name == plugin_conf.args: break