One Touch Maintainin’

Emacs gets a lot of very nice, but quite simple patches that take quite a lot of keystrokes to process.  It’s hard on the fingers, and you always forget various bits.

So I wondered how simple it could be, and hacked up this workflow tonight.

You start in the debbugs-gnu buffer, as always, narrowed down to the patches with `C-u / patch’ and perhaps an `x’.

patch0

Select a likely message with `RET’.

patch1

Then the fun begins with the new `M-m’ command.  It determines whether the patch is in the MIME attachments or just included in the message, applies it, and displays the diffs and possibly any rejected hunks.  It also does a `compile’ in the lisp directory so that we see that things are OK.

patch2

Everthing is hunky dory, so we just hit `M-m’ again to go to the changed file.

patch3

Here we can imagine that we do some clean-up, but this patch is perfect, so we just hit `M-m’ again.  This pops us into the ChangeLog with the correct user name, and the bug number appended.  If the user has never had any non-“tiny change” code in Emacs before, “(tiny change)” is appended automatically.

patch4

But there’s one non-tiny change from this user before, so no (tiny change), and we just type in an entry.

patch5

Then `M-m’.  This pops us to the top-level checkin buffer, filled out with the right data.

patch6

And then just type in a summary and `C-c C-c’, and you’re done.

Ok, it’s not a one click solution, but it’s better than…  doing all this by hand.

Or using a web browser.

2 thoughts on “One Touch Maintainin’”

Leave a Reply