Gnus Manual. Node: Extended Interactive

PREVGroup Info UPA Programmers Guide to Gnus NEXTEmacs/XEmacs Code

10.5.7: Extended Interactive

Gnus extends the standard Emacs interactive specification slightly to allow easy use of the symbolic prefix (see Symbolic Prefixes). Here's an example of how this is used:

(defun gnus-summary-increase-score (&optional score symp)
  (interactive (gnus-interactive "P\ny"))
  ...
  )

The best thing to do would have been to implement gnus-interactive as a macro which would have returned an interactive form, but this isn't possible since Emacs checks whether a function is interactive or not by simply doing an assq on the lambda form. So, instead we have gnus-interactive function that takes a string and returns values that are usable to interactive.

This function accepts (almost) all normal interactive specs, but adds a few more.

`y'

The current symbolic prefix---the gnus-current-prefix-symbol variable.

`Y'

A list of the current symbolic prefixes---the gnus-current-prefix-symbol variable.

`A'

The current article number---the gnus-summary-article-number function.

`H'

The current article header---the gnus-summary-article-header function.

`g'

The current group name---the gnus-group-group-name function.

PREVGroup Info UPA Programmers Guide to Gnus NEXTEmacs/XEmacs Code