2794 u.warn(_("module %s overrides %s\n") % (x.__name__, t)) |
2794 u.warn(_("module %s overrides %s\n") % (x.__name__, t)) |
2795 table.update(cmdtable) |
2795 table.update(cmdtable) |
2796 |
2796 |
2797 try: |
2797 try: |
2798 cmd, func, args, options, cmdoptions = parse(u, args) |
2798 cmd, func, args, options, cmdoptions = parse(u, args) |
2799 except ParseError, inst: |
2799 if options["time"]: |
2800 if inst.args[0]: |
2800 def get_times(): |
2801 u.warn(_("hg %s: %s\n") % (inst.args[0], inst.args[1])) |
2801 t = os.times() |
2802 help_(u, inst.args[0]) |
2802 if t[4] == 0.0: # Windows leaves this as zero, so use time.clock() |
2803 else: |
2803 t = (t[0], t[1], t[2], t[3], time.clock()) |
2804 u.warn(_("hg: %s\n") % inst.args[1]) |
2804 return t |
2805 help_(u, 'shortlist') |
2805 s = get_times() |
2806 sys.exit(-1) |
2806 def print_time(): |
2807 except AmbiguousCommand, inst: |
2807 t = get_times() |
2808 u.warn(_("hg: command '%s' is ambiguous:\n %s\n") % |
2808 u.warn(_("Time: real %.3f secs (user %.3f+%.3f sys %.3f+%.3f)\n") % |
2809 (inst.args[0], " ".join(inst.args[1]))) |
2809 (t[4]-s[4], t[0]-s[0], t[2]-s[2], t[1]-s[1], t[3]-s[3])) |
2810 sys.exit(1) |
2810 atexit.register(print_time) |
2811 except UnknownCommand, inst: |
2811 |
2812 u.warn(_("hg: unknown command '%s'\n") % inst.args[0]) |
2812 u.updateopts(options["verbose"], options["debug"], options["quiet"], |
2813 help_(u, 'shortlist') |
2813 not options["noninteractive"]) |
2814 sys.exit(1) |
2814 |
2815 |
2815 # enter the debugger before command execution |
2816 if options["time"]: |
2816 if options['debugger']: |
2817 def get_times(): |
2817 pdb.set_trace() |
2818 t = os.times() |
2818 |
2819 if t[4] == 0.0: # Windows leaves this as zero, so use time.clock() |
|
2820 t = (t[0], t[1], t[2], t[3], time.clock()) |
|
2821 return t |
|
2822 s = get_times() |
|
2823 def print_time(): |
|
2824 t = get_times() |
|
2825 u.warn(_("Time: real %.3f secs (user %.3f+%.3f sys %.3f+%.3f)\n") % |
|
2826 (t[4]-s[4], t[0]-s[0], t[2]-s[2], t[1]-s[1], t[3]-s[3])) |
|
2827 atexit.register(print_time) |
|
2828 |
|
2829 u.updateopts(options["verbose"], options["debug"], options["quiet"], |
|
2830 not options["noninteractive"]) |
|
2831 |
|
2832 # enter the debugger before command execution |
|
2833 if options['debugger']: |
|
2834 pdb.set_trace() |
|
2835 |
|
2836 try: |
|
2837 try: |
2819 try: |
2838 if options['cwd']: |
2820 if options['cwd']: |
2839 try: |
2821 try: |
2840 os.chdir(options['cwd']) |
2822 os.chdir(options['cwd']) |
2841 except OSError, inst: |
2823 except OSError, inst: |
2899 if options['debugger']: |
2881 if options['debugger']: |
2900 pdb.post_mortem(sys.exc_info()[2]) |
2882 pdb.post_mortem(sys.exc_info()[2]) |
2901 if options['traceback']: |
2883 if options['traceback']: |
2902 traceback.print_exc() |
2884 traceback.print_exc() |
2903 raise |
2885 raise |
|
2886 except ParseError, inst: |
|
2887 if inst.args[0]: |
|
2888 u.warn(_("hg %s: %s\n") % (inst.args[0], inst.args[1])) |
|
2889 help_(u, inst.args[0]) |
|
2890 else: |
|
2891 u.warn(_("hg: %s\n") % inst.args[1]) |
|
2892 help_(u, 'shortlist') |
|
2893 sys.exit(-1) |
|
2894 except AmbiguousCommand, inst: |
|
2895 u.warn(_("hg: command '%s' is ambiguous:\n %s\n") % |
|
2896 (inst.args[0], " ".join(inst.args[1]))) |
|
2897 sys.exit(1) |
|
2898 except UnknownCommand, inst: |
|
2899 u.warn(_("hg: unknown command '%s'\n") % inst.args[0]) |
|
2900 help_(u, 'shortlist') |
|
2901 sys.exit(1) |
2904 except hg.RepoError, inst: |
2902 except hg.RepoError, inst: |
2905 u.warn(_("abort: "), inst, "!\n") |
2903 u.warn(_("abort: "), inst, "!\n") |
2906 except revlog.RevlogError, inst: |
2904 except revlog.RevlogError, inst: |
2907 u.warn(_("abort: "), inst, "!\n") |
2905 u.warn(_("abort: "), inst, "!\n") |
2908 except SignalInterrupt: |
2906 except SignalInterrupt: |
2945 if len(tb) > 2: # no |
2943 if len(tb) > 2: # no |
2946 raise |
2944 raise |
2947 u.debug(inst, "\n") |
2945 u.debug(inst, "\n") |
2948 u.warn(_("%s: invalid arguments\n") % cmd) |
2946 u.warn(_("%s: invalid arguments\n") % cmd) |
2949 help_(u, cmd) |
2947 help_(u, cmd) |
2950 except AmbiguousCommand, inst: |
|
2951 u.warn(_("hg: command '%s' is ambiguous:\n %s\n") % |
|
2952 (inst.args[0], " ".join(inst.args[1]))) |
|
2953 help_(u, 'shortlist') |
|
2954 except UnknownCommand, inst: |
|
2955 u.warn(_("hg: unknown command '%s'\n") % inst.args[0]) |
|
2956 help_(u, 'shortlist') |
|
2957 except SystemExit: |
2948 except SystemExit: |
2958 # don't catch this in the catch-all below |
2949 # don't catch this in the catch-all below |
2959 raise |
2950 raise |
2960 except: |
2951 except: |
2961 u.warn(_("** unknown exception encountered, details follow\n")) |
2952 u.warn(_("** unknown exception encountered, details follow\n")) |