mercurial/cmdutil.py
changeset 7369 87158be081b8
parent 7361 9fe97eea5510
child 7404 07cb58b8c843
equal deleted inserted replaced
7368:595ba2537d4f 7369:87158be081b8
   594             self.ui.write(self.hunk[rev])
   594             self.ui.write(self.hunk[rev])
   595             del self.hunk[rev]
   595             del self.hunk[rev]
   596             return 1
   596             return 1
   597         return 0
   597         return 0
   598 
   598 
   599     def show(self, rev=0, changenode=None, copies=(), **props):
   599     def show(self, ctx, copies=(), **props):
   600         if self.buffered:
   600         if self.buffered:
   601             self.ui.pushbuffer()
   601             self.ui.pushbuffer()
   602             self._show(rev, changenode, copies, props)
   602             self._show(ctx, copies, props)
   603             self.hunk[rev] = self.ui.popbuffer()
   603             self.hunk[ctx.rev()] = self.ui.popbuffer()
   604         else:
   604         else:
   605             self._show(rev, changenode, copies, props)
   605             self._show(ctx, copies, props)
   606 
   606 
   607     def _show(self, rev, changenode, copies, props):
   607     def _show(self, ctx, copies, props):
   608         '''show a single changeset or file revision'''
   608         '''show a single changeset or file revision'''
   609         log = self.repo.changelog
   609         changenode = ctx.node()
   610         if changenode is None:
   610         rev = ctx.rev()
   611             changenode = log.node(rev)
       
   612         elif not rev:
       
   613             rev = log.rev(changenode)
       
   614 
   611 
   615         if self.ui.quiet:
   612         if self.ui.quiet:
   616             self.ui.write("%d:%s\n" % (rev, short(changenode)))
   613             self.ui.write("%d:%s\n" % (rev, short(changenode)))
   617             return
   614             return
   618 
   615 
       
   616         log = self.repo.changelog
   619         changes = log.read(changenode)
   617         changes = log.read(changenode)
   620         date = util.datestr(changes[2])
   618         date = util.datestr(changes[2])
   621         extra = changes[5]
   619         extra = changes[5]
   622         branch = extra.get("branch")
   620         branch = extra.get("branch")
   623 
   621 
   714 
   712 
   715     def use_template(self, t):
   713     def use_template(self, t):
   716         '''set template string to use'''
   714         '''set template string to use'''
   717         self.t.cache['changeset'] = t
   715         self.t.cache['changeset'] = t
   718 
   716 
   719     def _show(self, rev, changenode, copies, props):
   717     def _show(self, ctx, copies, props):
   720         '''show a single changeset or file revision'''
   718         '''show a single changeset or file revision'''
       
   719         changenode = ctx.node()
       
   720         rev = ctx.rev()
       
   721 
   721         log = self.repo.changelog
   722         log = self.repo.changelog
   722         if changenode is None:
       
   723             changenode = log.node(rev)
       
   724         elif not rev:
       
   725             rev = log.rev(changenode)
       
   726 
       
   727         changes = log.read(changenode)
   723         changes = log.read(changenode)
   728 
   724 
   729         def showlist(name, values, plural=None, **args):
   725         def showlist(name, values, plural=None, **args):
   730             '''expand set of values.
   726             '''expand set of values.
   731             name is name of key in template map.
   727             name is name of key in template map.