Mercurial > public > mercurial-scm > hg
comparison mercurial/cmdutil.py @ 10819:36c6a667d733
cmdutil: make use of output labeling in changeset_printer
author | Brodie Rao <brodie@bitheap.org> |
---|---|
date | Fri, 02 Apr 2010 15:22:07 -0500 |
parents | cb0a7faa29ea |
children | 56fffc9c8928 |
comparison
equal
deleted
inserted
replaced
10818:d14d45fae927 | 10819:36c6a667d733 |
---|---|
733 | 733 |
734 def show(self, ctx, copies=None, **props): | 734 def show(self, ctx, copies=None, **props): |
735 if self.buffered: | 735 if self.buffered: |
736 self.ui.pushbuffer() | 736 self.ui.pushbuffer() |
737 self._show(ctx, copies, props) | 737 self._show(ctx, copies, props) |
738 self.hunk[ctx.rev()] = self.ui.popbuffer() | 738 self.hunk[ctx.rev()] = self.ui.popbuffer(labeled=True) |
739 else: | 739 else: |
740 self._show(ctx, copies, props) | 740 self._show(ctx, copies, props) |
741 | 741 |
742 def _show(self, ctx, copies, props): | 742 def _show(self, ctx, copies, props): |
743 '''show a single changeset or file revision''' | 743 '''show a single changeset or file revision''' |
744 changenode = ctx.node() | 744 changenode = ctx.node() |
745 rev = ctx.rev() | 745 rev = ctx.rev() |
746 | 746 |
747 if self.ui.quiet: | 747 if self.ui.quiet: |
748 self.ui.write("%d:%s\n" % (rev, short(changenode))) | 748 self.ui.write("%d:%s\n" % (rev, short(changenode)), |
749 label='log.node') | |
749 return | 750 return |
750 | 751 |
751 log = self.repo.changelog | 752 log = self.repo.changelog |
752 date = util.datestr(ctx.date()) | 753 date = util.datestr(ctx.date()) |
753 | 754 |
754 hexfunc = self.ui.debugflag and hex or short | 755 hexfunc = self.ui.debugflag and hex or short |
755 | 756 |
756 parents = [(p, hexfunc(log.node(p))) | 757 parents = [(p, hexfunc(log.node(p))) |
757 for p in self._meaningful_parentrevs(log, rev)] | 758 for p in self._meaningful_parentrevs(log, rev)] |
758 | 759 |
759 self.ui.write(_("changeset: %d:%s\n") % (rev, hexfunc(changenode))) | 760 self.ui.write(_("changeset: %d:%s\n") % (rev, hexfunc(changenode)), |
761 label='log.changeset') | |
760 | 762 |
761 branch = ctx.branch() | 763 branch = ctx.branch() |
762 # don't show the default branch name | 764 # don't show the default branch name |
763 if branch != 'default': | 765 if branch != 'default': |
764 branch = encoding.tolocal(branch) | 766 branch = encoding.tolocal(branch) |
765 self.ui.write(_("branch: %s\n") % branch) | 767 self.ui.write(_("branch: %s\n") % branch, |
768 label='log.branch') | |
766 for tag in self.repo.nodetags(changenode): | 769 for tag in self.repo.nodetags(changenode): |
767 self.ui.write(_("tag: %s\n") % tag) | 770 self.ui.write(_("tag: %s\n") % tag, |
771 label='log.tag') | |
768 for parent in parents: | 772 for parent in parents: |
769 self.ui.write(_("parent: %d:%s\n") % parent) | 773 self.ui.write(_("parent: %d:%s\n") % parent, |
774 label='log.parent') | |
770 | 775 |
771 if self.ui.debugflag: | 776 if self.ui.debugflag: |
772 mnode = ctx.manifestnode() | 777 mnode = ctx.manifestnode() |
773 self.ui.write(_("manifest: %d:%s\n") % | 778 self.ui.write(_("manifest: %d:%s\n") % |
774 (self.repo.manifest.rev(mnode), hex(mnode))) | 779 (self.repo.manifest.rev(mnode), hex(mnode)), |
775 self.ui.write(_("user: %s\n") % ctx.user()) | 780 label='ui.debug log.manifest') |
776 self.ui.write(_("date: %s\n") % date) | 781 self.ui.write(_("user: %s\n") % ctx.user(), |
782 label='log.user') | |
783 self.ui.write(_("date: %s\n") % date, | |
784 label='log.date') | |
777 | 785 |
778 if self.ui.debugflag: | 786 if self.ui.debugflag: |
779 files = self.repo.status(log.parents(changenode)[0], changenode)[:3] | 787 files = self.repo.status(log.parents(changenode)[0], changenode)[:3] |
780 for key, value in zip([_("files:"), _("files+:"), _("files-:")], | 788 for key, value in zip([_("files:"), _("files+:"), _("files-:")], |
781 files): | 789 files): |
782 if value: | 790 if value: |
783 self.ui.write("%-12s %s\n" % (key, " ".join(value))) | 791 self.ui.write("%-12s %s\n" % (key, " ".join(value)), |
792 label='ui.debug log.files') | |
784 elif ctx.files() and self.ui.verbose: | 793 elif ctx.files() and self.ui.verbose: |
785 self.ui.write(_("files: %s\n") % " ".join(ctx.files())) | 794 self.ui.write(_("files: %s\n") % " ".join(ctx.files()), |
795 label='ui.note log.files') | |
786 if copies and self.ui.verbose: | 796 if copies and self.ui.verbose: |
787 copies = ['%s (%s)' % c for c in copies] | 797 copies = ['%s (%s)' % c for c in copies] |
788 self.ui.write(_("copies: %s\n") % ' '.join(copies)) | 798 self.ui.write(_("copies: %s\n") % ' '.join(copies), |
799 label='ui.note log.copies') | |
789 | 800 |
790 extra = ctx.extra() | 801 extra = ctx.extra() |
791 if extra and self.ui.debugflag: | 802 if extra and self.ui.debugflag: |
792 for key, value in sorted(extra.items()): | 803 for key, value in sorted(extra.items()): |
793 self.ui.write(_("extra: %s=%s\n") | 804 self.ui.write(_("extra: %s=%s\n") |
794 % (key, value.encode('string_escape'))) | 805 % (key, value.encode('string_escape')), |
806 label='ui.debug log.extra') | |
795 | 807 |
796 description = ctx.description().strip() | 808 description = ctx.description().strip() |
797 if description: | 809 if description: |
798 if self.ui.verbose: | 810 if self.ui.verbose: |
799 self.ui.write(_("description:\n")) | 811 self.ui.write(_("description:\n"), |
800 self.ui.write(description) | 812 label='ui.note log.description') |
813 self.ui.write(description, | |
814 label='ui.note log.description') | |
801 self.ui.write("\n\n") | 815 self.ui.write("\n\n") |
802 else: | 816 else: |
803 self.ui.write(_("summary: %s\n") % | 817 self.ui.write(_("summary: %s\n") % |
804 description.splitlines()[0]) | 818 description.splitlines()[0], |
819 label='log.summary') | |
805 self.ui.write("\n") | 820 self.ui.write("\n") |
806 | 821 |
807 self.showpatch(changenode) | 822 self.showpatch(changenode) |
808 | 823 |
809 def showpatch(self, node): | 824 def showpatch(self, node): |
810 if self.patch: | 825 if self.patch: |
811 prev = self.repo.changelog.parents(node)[0] | 826 prev = self.repo.changelog.parents(node)[0] |
812 chunks = patch.diff(self.repo, prev, node, match=self.patch, | 827 chunks = patch.diffui(self.repo, prev, node, match=self.patch, |
813 opts=patch.diffopts(self.ui, self.diffopts)) | 828 opts=patch.diffopts(self.ui, self.diffopts)) |
814 for chunk in chunks: | 829 for chunk, label in chunks: |
815 self.ui.write(chunk) | 830 self.ui.write(chunk, label=label) |
816 self.ui.write("\n") | 831 self.ui.write("\n") |
817 | 832 |
818 def _meaningful_parentrevs(self, log, rev): | 833 def _meaningful_parentrevs(self, log, rev): |
819 """Return list of meaningful (or all if debug) parentrevs for rev. | 834 """Return list of meaningful (or all if debug) parentrevs for rev. |
820 | 835 |