Setup a buffer to enter a log message.
The buffer is put in mode MODE or `log-edit-mode' if MODE is nil.
Uses keymap `log-edit-mode-map', which is not currently defined.
If SETUP is non-nil, erase the buffer and run `log-edit-hook'.
Set mark and point around the entire contents of the buffer, so
that it is easy to kill the contents of the buffer with
C-w. Once the user is done editing the message,
invoking the command M-x log-edit-done (`log-edit-done') will
call CALLBACK to do the actual commit.
PARAMS if non-nil is an alist of variables and buffer-local
values to give them in the Log Edit buffer. Possible keys and
`log-edit-listfun' -- function taking no arguments that returns the list of
files that are concerned by the current operation (using relative names);
`log-edit-diff-function' -- function taking no arguments that
displays a diff of the files concerned by the current operation.
`vc-log-fileset' -- the VC fileset to be committed (if any).
If BUFFER is non-nil `log-edit' will jump to that buffer, use it
to edit the log message and go back to the current buffer when
done. Otherwise, it uses the current buffer. (fn CALLBACK &optional SETUP PARAMS BUFFER MODE &rest IGNORE)