Mercurial > hg > mercurial-crew-with-dirclash
comparison mercurial/commands.py @ 1453:6fbb13b7a59f
get command defaults from hgrc
author | TK Soh <teekaysoh@yahoo.com> |
---|---|
date | Wed, 26 Oct 2005 16:10:36 -0700 |
parents | 508a3f559553 |
children | 407bd229f003 |
comparison
equal
deleted
inserted
replaced
1452:f1755621cb7d | 1453:6fbb13b7a59f |
---|---|
2415 sys.exit(dispatch(sys.argv[1:])) | 2415 sys.exit(dispatch(sys.argv[1:])) |
2416 | 2416 |
2417 class ParseError(Exception): | 2417 class ParseError(Exception): |
2418 """Exception raised on errors in parsing the command line.""" | 2418 """Exception raised on errors in parsing the command line.""" |
2419 | 2419 |
2420 def parse(args): | 2420 def parse(ui, args): |
2421 options = {} | 2421 options = {} |
2422 cmdoptions = {} | 2422 cmdoptions = {} |
2423 | 2423 |
2424 try: | 2424 try: |
2425 args = fancyopts.fancyopts(args, globalopts, options) | 2425 args = fancyopts.fancyopts(args, globalopts, options) |
2426 except fancyopts.getopt.GetoptError, inst: | 2426 except fancyopts.getopt.GetoptError, inst: |
2427 raise ParseError(None, inst) | 2427 raise ParseError(None, inst) |
2428 | 2428 |
2429 if args: | 2429 if args: |
2430 cmd, args = args[0], args[1:] | 2430 cmd, args = args[0], args[1:] |
2431 defaults = ui.config("defaults", cmd) | |
2432 if defaults: | |
2433 # reparse with command defaults added | |
2434 args = [cmd] + defaults.split() + args | |
2435 try: | |
2436 args = fancyopts.fancyopts(args, globalopts, options) | |
2437 except fancyopts.getopt.GetoptError, inst: | |
2438 raise ParseError(None, inst) | |
2439 | |
2440 cmd, args = args[0], args[1:] | |
2441 | |
2431 i = find(cmd)[1] | 2442 i = find(cmd)[1] |
2432 c = list(i[1]) | 2443 c = list(i[1]) |
2433 else: | 2444 else: |
2434 cmd = None | 2445 cmd = None |
2435 c = [] | 2446 c = [] |
2492 if t in table: | 2503 if t in table: |
2493 u.warn(_("module %s overrides %s\n") % (x.__name__, t)) | 2504 u.warn(_("module %s overrides %s\n") % (x.__name__, t)) |
2494 table.update(cmdtable) | 2505 table.update(cmdtable) |
2495 | 2506 |
2496 try: | 2507 try: |
2497 cmd, func, args, options, cmdoptions = parse(args) | 2508 cmd, func, args, options, cmdoptions = parse(u, args) |
2498 except ParseError, inst: | 2509 except ParseError, inst: |
2499 if inst.args[0]: | 2510 if inst.args[0]: |
2500 u.warn(_("hg %s: %s\n") % (inst.args[0], inst.args[1])) | 2511 u.warn(_("hg %s: %s\n") % (inst.args[0], inst.args[1])) |
2501 help_(u, inst.args[0]) | 2512 help_(u, inst.args[0]) |
2502 else: | 2513 else: |