elisp: Interactive Examples

 
 20.2.3 Examples of Using ‘interactive’
 --------------------------------------
 
 Here are some examples of ‘interactive’:
 
      (defun foo1 ()              ; ‘foo1’ takes no arguments,
          (interactive)           ;   just moves forward two words.
          (forward-word 2))
           ⇒ foo1
 
      (defun foo2 (n)             ; ‘foo2’ takes one argument,
          (interactive "^p")      ;   which is the numeric prefix.
                                  ; under ‘shift-select-mode’,
                                  ;   will activate or extend region.
          (forward-word (* 2 n)))
           ⇒ foo2
 
      (defun foo3 (n)             ; ‘foo3’ takes one argument,
          (interactive "nCount:") ;   which is read with the Minibuffer.
          (forward-word (* 2 n)))
           ⇒ foo3
 
      (defun three-b (b1 b2 b3)
        "Select three existing buffers.
      Put them into three windows, selecting the last one."
          (interactive "bBuffer1:\nbBuffer2:\nbBuffer3:")
          (delete-other-windows)
          (split-window (selected-window) 8)
          (switch-to-buffer b1)
          (other-window 1)
          (split-window (selected-window) 8)
          (switch-to-buffer b2)
          (other-window 1)
          (switch-to-buffer b3))
           ⇒ three-b
      (three-b "*scratch*" "declarations.texi" "*mail*")
           ⇒ nil