Mercurial > hg
view contrib/simplemerge @ 6486:960bc707ea10
doc: escape .hg at bol in manpages with make (issue1072)
This works around a bug in old docbook stylesheets.
Remove .*.swp example from hgignore.5.txt.
Diagnosis and workaround thanks to Alexis S. L. Carvalho.
author | Christian Ebert <blacktrash@gmx.net> |
---|---|
date | Mon, 07 Apr 2008 09:02:04 +0200 |
parents | abd66eb0889e |
children | a6477aa893b8 |
line wrap: on
line source
#!/usr/bin/env python from mercurial import demandimport demandimport.enable() import os, sys from mercurial.i18n import _ from mercurial import simplemerge, fancyopts, util options = [('L', 'label', [], _('labels to use on conflict markers')), ('a', 'text', None, _('treat all files as text')), ('p', 'print', None, _('print results instead of overwriting LOCAL')), ('', 'no-minimal', None, _('do not try to minimize conflict regions')), ('h', 'help', None, _('display help and exit')), ('q', 'quiet', None, _('suppress output'))] usage = _('''simplemerge [OPTS] LOCAL BASE OTHER Simple three-way file merge utility with a minimal feature set. Apply to LOCAL the changes necessary to go from BASE to OTHER. By default, LOCAL is overwritten with the results of this operation. ''') class ParseError(Exception): """Exception raised on errors in parsing the command line.""" def showhelp(): sys.stdout.write(usage) sys.stdout.write('\noptions:\n') out_opts = [] for shortopt, longopt, default, desc in options: out_opts.append(('%2s%s' % (shortopt and '-%s' % shortopt, longopt and ' --%s' % longopt), '%s' % desc)) opts_len = max([len(opt[0]) for opt in out_opts]) for first, second in out_opts: sys.stdout.write(' %-*s %s\n' % (opts_len, first, second)) try: opts = {} try: args = fancyopts.fancyopts(sys.argv[1:], options, opts) except fancyopts.getopt.GetoptError, e: raise ParseError(e) if opts['help']: showhelp() sys.exit(0) if len(args) != 3: raise ParseError(_('wrong number of arguments')) sys.exit(simplemerge.simplemerge(*args, **opts)) except ParseError, e: sys.stdout.write("%s: %s\n" % (sys.argv[0], e)) showhelp() sys.exit(1) except util.Abort, e: sys.stderr.write("abort: %s\n" % e) sys.exit(255) except KeyboardInterrupt: sys.exit(255)