hgext/keyword.py
changeset 5885 53be157543d4
parent 5884 a139f141dcae
child 5915 d0576d065993
equal deleted inserted replaced
5884:a139f141dcae 5885:53be157543d4
    92 
    92 
    93 def _kwrestrict(cmd):
    93 def _kwrestrict(cmd):
    94     '''Returns True if cmd should trigger restricted expansion.
    94     '''Returns True if cmd should trigger restricted expansion.
    95     Keywords will only expanded when writing to working dir.
    95     Keywords will only expanded when writing to working dir.
    96     Crucial for mq as expanded keywords should not make it into patches.'''
    96     Crucial for mq as expanded keywords should not make it into patches.'''
    97     return cmd in ('qimport', 'qnew', 'qpush', 'qrefresh', 'record', 'qrecord')
    97     return cmd in ('diff1', 
       
    98                    'qimport', 'qnew', 'qpush', 'qrefresh', 'record', 'qrecord')
    98 
    99 
    99 
   100 
   100 _kwtemplater = None
   101 _kwtemplater = None
   101 
   102 
   102 class kwtemplater(object):
   103 class kwtemplater(object):
   417                     'convert')
   418                     'convert')
   418     hgcmd, func, args, opts, cmdopts = dispatch._parse(ui, sys.argv[1:])
   419     hgcmd, func, args, opts, cmdopts = dispatch._parse(ui, sys.argv[1:])
   419     if hgcmd in nokwcommands:
   420     if hgcmd in nokwcommands:
   420         return
   421         return
   421 
   422 
       
   423     if hgcmd == 'diff':
       
   424         # only expand if comparing against working dir
       
   425         node1, node2 = cmdutil.revpair(repo, cmdopts.get('rev'))
       
   426         if node2 is not None:
       
   427             return
       
   428         # shrink if rev is not current node
       
   429         if node1 is not None and node1 != repo.changectx().node():
       
   430             hgcmd = 'diff1'
       
   431 
   422     inc, exc = [], ['.hgtags']
   432     inc, exc = [], ['.hgtags']
   423     for pat, opt in ui.configitems('keyword'):
   433     for pat, opt in ui.configitems('keyword'):
   424         if opt != 'ignore':
   434         if opt != 'ignore':
   425             inc.append(pat)
   435             inc.append(pat)
   426         else:
   436         else: