+2009-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (error, sit-for, start-process-shell-command)
+ (start-file-process-shell-command): Use the new
+ set-advertised-calling-convention feature.
+
2009-10-16 Taichi Kawabata <kawabata.taichi@gmail.com>
- * international/ucs-normalize.el (ucs-normalize-version): Changed
- to 1.2.
- (check-range): Adjusted for Unicode 5.2.
+ * international/ucs-normalize.el (ucs-normalize-version):
+ Change to 1.2.
+ (check-range): Adjust for Unicode 5.2.
2009-10-15 Juri Linkov <juri@jurta.org>
(interactive)
nil)
+;; Signal a compile-error if the first arg is missing.
+(set-advertised-calling-convention 'error '(string &rest args))
(defun error (&rest args)
"Signal an error, making error message by passing all args to `format'.
In Emacs, the convention is that error messages start with a capital
letter but *do not* end with a period. Please follow this convention
-for the sake of consistency.
-
-\(fn STRING &rest ARGS)"
+for the sake of consistency."
(while t
(signal 'error (list (apply 'format args)))))
t)))
n))
+(set-advertised-calling-convention 'sit-for '(seconds &optional nodisp))
(defun sit-for (seconds &optional nodisp obsolete)
"Perform redisplay, then wait for SECONDS seconds or until input is available.
SECONDS may be a floating-point value.
\(sit-for SECONDS &optional MILLISECONDS NODISP)
where the optional arg MILLISECONDS specifies an additional wait period,
in milliseconds; this was useful when Emacs was built without
-floating point support.
-
-\(fn SECONDS &optional NODISP)"
+floating point support."
(if (numberp nodisp)
(setq seconds (+ seconds (* 1e-3 nodisp))
nodisp obsolete)
\f
;;;; Synchronous shell commands.
+(set-advertised-calling-convention 'start-process-shell-command
+ '(name buffer command))
(defun start-process-shell-command (name buffer &rest args)
"Start a program in a subprocess. Return the process object for it.
NAME is name for process. It is modified if necessary to make it unique.
An old calling convention accepted any number of arguments after COMMAND,
which were just concatenated to COMMAND. This is still supported but strongly
-discouraged.
-
-\(fn NAME BUFFER COMMAND)"
+discouraged."
;; We used to use `exec' to replace the shell with the command,
;; but that failed to handle (...) and semicolon, etc.
(start-process name buffer shell-file-name shell-command-switch
(mapconcat 'identity args " ")))
+(set-advertised-calling-convention 'start-file-process-shell-command
+ '(name buffer command))
(defun start-file-process-shell-command (name buffer &rest args)
"Start a program in a subprocess. Return the process object for it.
-Similar to `start-process-shell-command', but calls `start-file-process'.
-
-\(fn NAME BUFFER COMMAND)"
+Similar to `start-process-shell-command', but calls `start-file-process'."
(start-file-process
name buffer
(if (file-remote-p default-directory) "/bin/sh" shell-file-name)