Mercurial > public > mercurial-scm > hg-stable
diff mercurial/commands.py @ 3346:1700a103458e
move the parsing of --config options to commands.py
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Tue, 10 Oct 2006 18:43:20 -0300 |
parents | a09be4317f9c |
children | e4aa22eaa0e4 |
line wrap: on
line diff
--- a/mercurial/commands.py Tue Oct 10 18:43:20 2006 -0300 +++ b/mercurial/commands.py Tue Oct 10 18:43:20 2006 -0300 @@ -3275,6 +3275,20 @@ ui.warn(_("module %s overrides %s\n") % (name, t)) table.update(cmdtable) +def parseconfig(config): + """parse the --config options from the command line""" + parsed = [] + for cfg in config: + try: + name, value = cfg.split('=', 1) + section, name = name.split('.', 1) + if not section or not name: + raise IndexError + parsed.append((section, name, value)) + except (IndexError, ValueError): + raise util.Abort(_('malformed --config option: %s') % cfg) + return parsed + def dispatch(args): for name in 'SIGBREAK', 'SIGHUP', 'SIGTERM': num = getattr(signal, name, None) @@ -3306,7 +3320,7 @@ u.updateopts(options["verbose"], options["debug"], options["quiet"], not options["noninteractive"], options["traceback"], - options["config"]) + parseconfig(options["config"])) # enter the debugger before command execution if options['debugger']: