diff hgext/mq.py @ 21423:7d408720453d

mq: use the editor gotten by "getcommiteditor()" instead of "ui.edit()" (qrefresh/qfold) This patch also replaces "editor = False" by "editor = cmdutil.getcommiteditor()", because: - it allows to hook commit message determination easily, even in the case without "--edit" - it avoids regression (or additional care) around saving "last-message.txt", even if MQ's "newcommit()" changes its implementation logic from "localrepository.commit" to "localrepository.commitctx" with "memctx" in the future to save commit message into "last-messge.txt" with "memctx", "editor" should be valid function.
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
date Sun, 11 May 2014 00:49:36 +0900
parents edc6ced48d2d
children 7a51bced398b
line wrap: on
line diff
--- a/hgext/mq.py	Sun May 11 00:49:36 2014 +0900
+++ b/hgext/mq.py	Sun May 11 00:49:36 2014 +0900
@@ -1656,17 +1656,18 @@
                 # might be nice to attempt to roll back strip after this
 
                 defaultmsg = "[mq]: %s" % patchfn
-                editor = False
+                editor = cmdutil.getcommiteditor()
                 if edit:
-                    def desceditor(repo, ctx, subs):
-                        desc = self.ui.edit(ctx.description() + "\n",
-                                            ctx.user())
+                    def finishdesc(desc):
                         if desc.rstrip():
                             ph.setmessage(desc)
                             return desc
                         return defaultmsg
+                    # i18n: this message is shown in editor with "HG: " prefix
+                    extramsg = _('Leave message empty to use default message.')
+                    editor = cmdutil.getcommiteditor(finishdesc=finishdesc,
+                                                     extramsg=extramsg)
                     message = msg or "\n".join(ph.message)
-                    editor = desceditor
                 elif not msg:
                     if not ph.message:
                         message = defaultmsg