defun-cvs-mode

defun-cvs-mode is a Lisp macro in `pcvs.el'.

(defun-cvs-mode FUN ARGS DOCSTRING INTERACT &rest BODY)

Define a function to be used in a *cvs* buffer.
This will look for a *cvs* buffer and execute BODY in it.
Since the interactive arguments might need to be queried after
switching to the *cvs* buffer, the generic code is rather ugly,
but luckily we can often use simpler alternatives.

FUN can be either a symbol (i.e. STYLE is nil) or a cons (FUN . STYLE).
ARGS and DOCSTRING are the normal argument list.
INTERACT is the interactive specification or nil for non-commands.

STYLE can be either `SIMPLE', `NOARGS' or `DOUBLE'. It's an error for it
to have any other value, unless other details of the function make it
clear what alternative to use.
- `SIMPLE' will get all the interactive arguments from the original buffer.
- `NOARGS' will get all the arguments from the *cvs* buffer and will
always behave as if called interactively.
- `DOUBLE' is the generic case.