mercurial/crecord.py
changeset 41623 7c4e205f71ca
parent 41535 7a90ff8cd14c
child 41700 1f44bfab0fff
equal deleted inserted replaced
41622:635a12c53ea6 41623:7c4e205f71ca
   375         return self.changedlines
   375         return self.changedlines
   376 
   376 
   377     def countchanges(self):
   377     def countchanges(self):
   378         """changedlines -> (n+,n-)"""
   378         """changedlines -> (n+,n-)"""
   379         add = len([l for l in self.changedlines if l.applied
   379         add = len([l for l in self.changedlines if l.applied
   380                    and l.prettystr()[0] == '+'])
   380                     and l.prettystr().startswith('+')])
   381         rem = len([l for l in self.changedlines if l.applied
   381         rem = len([l for l in self.changedlines if l.applied
   382                    and l.prettystr()[0] == '-'])
   382                     and l.prettystr().startswith('-')])
   383         return add, rem
   383         return add, rem
   384 
   384 
   385     def getfromtoline(self):
   385     def getfromtoline(self):
   386         # calculate the number of removed lines converted to context lines
   386         # calculate the number of removed lines converted to context lines
   387         removedconvertedtocontext = self.originalremoved - self.removed
   387         removedconvertedtocontext = self.originalremoved - self.removed
   421         # (2) all unapplied removal lines (convert these to context lines)
   421         # (2) all unapplied removal lines (convert these to context lines)
   422         for changedline in self.changedlines:
   422         for changedline in self.changedlines:
   423             changedlinestr = changedline.prettystr()
   423             changedlinestr = changedline.prettystr()
   424             if changedline.applied:
   424             if changedline.applied:
   425                 hunklinelist.append(changedlinestr)
   425                 hunklinelist.append(changedlinestr)
   426             elif changedlinestr[0] == "-":
   426             elif changedlinestr.startswith("-"):
   427                 hunklinelist.append(" " + changedlinestr[1:])
   427                 hunklinelist.append(" " + changedlinestr[1:])
   428 
   428 
   429         fp.write(''.join(self.before + hunklinelist + self.after))
   429         fp.write(''.join(self.before + hunklinelist + self.after))
   430 
   430 
   431     pretty = write
   431     pretty = write
   469         dels = []
   469         dels = []
   470         adds = []
   470         adds = []
   471         for line in self.changedlines:
   471         for line in self.changedlines:
   472             text = line.linetext
   472             text = line.linetext
   473             if line.applied:
   473             if line.applied:
   474                 if text[0] == '+':
   474                 if text.startswith('+'):
   475                     dels.append(text[1:])
   475                     dels.append(text[1:])
   476                 elif text[0] == '-':
   476                 elif text.startswith('-'):
   477                     adds.append(text[1:])
   477                     adds.append(text[1:])
   478             elif text[0] == '+':
   478             elif text.startswith('+'):
   479                 dels.append(text[1:])
   479                 dels.append(text[1:])
   480                 adds.append(text[1:])
   480                 adds.append(text[1:])
   481         hunk = ['-%s' % l for l in dels] + ['+%s' % l for l in adds]
   481         hunk = ['-%s' % l for l in dels] + ['+%s' % l for l in adds]
   482         h = self._hunk
   482         h = self._hunk
   483         return patchmod.recordhunk(h.header, h.toline, h.fromline, h.proc,
   483         return patchmod.recordhunk(h.header, h.toline, h.fromline, h.proc,