hgext/mq.py
changeset 22003 cbbd957358ff
parent 21965 fd7839d1107d
child 22048 bfc09ea87f3e
equal deleted inserted replaced
22002:a44b7b6f3cd7 22003:cbbd957358ff
  1023         """options:
  1023         """options:
  1024            msg: a string or a no-argument function returning a string
  1024            msg: a string or a no-argument function returning a string
  1025         """
  1025         """
  1026         msg = opts.get('msg')
  1026         msg = opts.get('msg')
  1027         edit = opts.get('edit')
  1027         edit = opts.get('edit')
       
  1028         editform = opts.get('editform', 'mq.qnew')
  1028         user = opts.get('user')
  1029         user = opts.get('user')
  1029         date = opts.get('date')
  1030         date = opts.get('date')
  1030         if date:
  1031         if date:
  1031             date = util.parsedate(date)
  1032             date = util.parsedate(date)
  1032         diffopts = self.diffopts({'git': opts.get('git')})
  1033         diffopts = self.diffopts({'git': opts.get('git')})
  1077                         p.write("# User " + user + "\n")
  1078                         p.write("# User " + user + "\n")
  1078                     if date:
  1079                     if date:
  1079                         p.write("# Date %s %s\n\n" % date)
  1080                         p.write("# Date %s %s\n\n" % date)
  1080 
  1081 
  1081                 defaultmsg = "[mq]: %s" % patchfn
  1082                 defaultmsg = "[mq]: %s" % patchfn
  1082                 editor = cmdutil.getcommiteditor()
  1083                 editor = cmdutil.getcommiteditor(editform=editform)
  1083                 if edit:
  1084                 if edit:
  1084                     def finishdesc(desc):
  1085                     def finishdesc(desc):
  1085                         if desc.rstrip():
  1086                         if desc.rstrip():
  1086                             return desc
  1087                             return desc
  1087                         else:
  1088                         else:
  1088                             return defaultmsg
  1089                             return defaultmsg
  1089                     # i18n: this message is shown in editor with "HG: " prefix
  1090                     # i18n: this message is shown in editor with "HG: " prefix
  1090                     extramsg = _('Leave message empty to use default message.')
  1091                     extramsg = _('Leave message empty to use default message.')
  1091                     editor = cmdutil.getcommiteditor(finishdesc=finishdesc,
  1092                     editor = cmdutil.getcommiteditor(finishdesc=finishdesc,
  1092                                                      extramsg=extramsg)
  1093                                                      extramsg=extramsg,
       
  1094                                                      editform=editform)
  1093                     commitmsg = msg
  1095                     commitmsg = msg
  1094                 else:
  1096                 else:
  1095                     commitmsg = msg or defaultmsg
  1097                     commitmsg = msg or defaultmsg
  1096 
  1098 
  1097                 n = newcommit(repo, None, commitmsg, user, date, match=match,
  1099                 n = newcommit(repo, None, commitmsg, user, date, match=match,
  1483         if not self.applied:
  1485         if not self.applied:
  1484             self.ui.write(_("no patches applied\n"))
  1486             self.ui.write(_("no patches applied\n"))
  1485             return 1
  1487             return 1
  1486         msg = opts.get('msg', '').rstrip()
  1488         msg = opts.get('msg', '').rstrip()
  1487         edit = opts.get('edit')
  1489         edit = opts.get('edit')
       
  1490         editform = opts.get('editform', 'mq.qrefresh')
  1488         newuser = opts.get('user')
  1491         newuser = opts.get('user')
  1489         newdate = opts.get('date')
  1492         newdate = opts.get('date')
  1490         if newdate:
  1493         if newdate:
  1491             newdate = '%d %d' % util.parsedate(newdate)
  1494             newdate = '%d %d' % util.parsedate(newdate)
  1492         wlock = repo.wlock()
  1495         wlock = repo.wlock()
  1652 
  1655 
  1653             try:
  1656             try:
  1654                 # might be nice to attempt to roll back strip after this
  1657                 # might be nice to attempt to roll back strip after this
  1655 
  1658 
  1656                 defaultmsg = "[mq]: %s" % patchfn
  1659                 defaultmsg = "[mq]: %s" % patchfn
  1657                 editor = cmdutil.getcommiteditor()
  1660                 editor = cmdutil.getcommiteditor(editform=editform)
  1658                 if edit:
  1661                 if edit:
  1659                     def finishdesc(desc):
  1662                     def finishdesc(desc):
  1660                         if desc.rstrip():
  1663                         if desc.rstrip():
  1661                             ph.setmessage(desc)
  1664                             ph.setmessage(desc)
  1662                             return desc
  1665                             return desc
  1663                         return defaultmsg
  1666                         return defaultmsg
  1664                     # i18n: this message is shown in editor with "HG: " prefix
  1667                     # i18n: this message is shown in editor with "HG: " prefix
  1665                     extramsg = _('Leave message empty to use default message.')
  1668                     extramsg = _('Leave message empty to use default message.')
  1666                     editor = cmdutil.getcommiteditor(finishdesc=finishdesc,
  1669                     editor = cmdutil.getcommiteditor(finishdesc=finishdesc,
  1667                                                      extramsg=extramsg)
  1670                                                      extramsg=extramsg,
       
  1671                                                      editform=editform)
  1668                     message = msg or "\n".join(ph.message)
  1672                     message = msg or "\n".join(ph.message)
  1669                 elif not msg:
  1673                 elif not msg:
  1670                     if not ph.message:
  1674                     if not ph.message:
  1671                         message = defaultmsg
  1675                         message = defaultmsg
  1672                     else:
  1676                     else:
  2583         message = '\n'.join(message)
  2587         message = '\n'.join(message)
  2584 
  2588 
  2585     diffopts = q.patchopts(q.diffopts(), *patches)
  2589     diffopts = q.patchopts(q.diffopts(), *patches)
  2586     wlock = repo.wlock()
  2590     wlock = repo.wlock()
  2587     try:
  2591     try:
  2588         q.refresh(repo, msg=message, git=diffopts.git, edit=opts.get('edit'))
  2592         q.refresh(repo, msg=message, git=diffopts.git, edit=opts.get('edit'),
       
  2593                   editform='mq.qfold')
  2589         q.delete(repo, patches, opts)
  2594         q.delete(repo, patches, opts)
  2590         q.savedirty()
  2595         q.savedirty()
  2591     finally:
  2596     finally:
  2592         wlock.release()
  2597         wlock.release()
  2593 
  2598