Clarify the `call-interactively' doc string, and add an example.
authorLars Magne Ingebrigtsen <larsi@gnus.org>
Thu, 7 Jul 2011 16:59:26 +0000 (18:59 +0200)
committerLars Magne Ingebrigtsen <larsi@gnus.org>
Thu, 7 Jul 2011 16:59:26 +0000 (18:59 +0200)
doc/lispref/ChangeLog
doc/lispref/commands.texi
src/ChangeLog
src/callint.c

index 23ddf0c..773321f 100644 (file)
@@ -1,3 +1,8 @@
+2011-07-07  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * commands.texi (Interactive Call): Add a `call-interactively'
+       example (bug#1010).
+
 2011-07-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
        * functions.texi (Calling Functions): Link to the "Interactive
index eb42ddb..dccc2fa 100644 (file)
@@ -597,13 +597,32 @@ realistic example of using @code{commandp}.
 
 @defun call-interactively command &optional record-flag keys
 This function calls the interactively callable function @var{command},
-reading arguments according to its interactive calling specifications.
-It returns whatever @var{command} returns.  An error is signaled if
-@var{command} is not a function or if it cannot be called
-interactively (i.e., is not a command).  Note that keyboard macros
-(strings and vectors) are not accepted, even though they are
-considered commands, because they are not functions.  If @var{command}
-is a symbol, then @code{call-interactively} uses its function definition.
+providing arguments according to its interactive calling specifications.
+It returns whatever @var{command} returns.
+
+If, for instance, you have a function with the following signature:
+
+@example
+(defun foo (begin end)
+  (interactive "r")
+  ...)
+@end example
+
+then saying
+
+@example
+(call-interactively 'foo)
+@end example
+
+will call @code{foo} with the region (@code{point} and @code{mark}) as
+the arguments.
+
+An error is signaled if @var{command} is not a function or if it
+cannot be called interactively (i.e., is not a command).  Note that
+keyboard macros (strings and vectors) are not accepted, even though
+they are considered commands, because they are not functions.  If
+@var{command} is a symbol, then @code{call-interactively} uses its
+function definition.
 
 @cindex record command history
 If @var{record-flag} is non-@code{nil}, then this command and its
index 9186061..8c1af2a 100644 (file)
@@ -1,3 +1,8 @@
+2011-07-07  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * callint.c (Fcall_interactively): Change "reading args" to
+       "providing args" to try to clarify what it does (bug#1010).
+
 2011-07-07  Kenichi Handa  <handa@m17n.org>
 
        * composite.c (composition_compute_stop_pos): Ignore a static
index 1371b40..26b161a 100644 (file)
@@ -234,7 +234,7 @@ fix_command (Lisp_Object input, Lisp_Object values)
 }
 
 DEFUN ("call-interactively", Fcall_interactively, Scall_interactively, 1, 3, 0,
-       doc: /* Call FUNCTION, reading args according to its interactive calling specs.
+       doc: /* Call FUNCTION, providing args according to its interactive calling specs.
 Return the value FUNCTION returns.
 The function contains a specification of how to do the argument reading.
 In the case of user-defined functions, this is specified by placing a call