--- editfns.c 2007-12-10 11:56:42.000000000 -0500 +++ editfnsmy.c 2007-12-10 11:56:34.000000000 -0500 @@ -3221,25 +3221,40 @@ any existing message; this lets the minibuffer contents show. See also `current-message'. +If the first argument is t, the function is equivalent to calling +(message "%s" second-argument). + usage: (message FORMAT-STRING &rest ARGS) */) (nargs, args) int nargs; Lisp_Object *args; { - if (NILP (args[0]) - || (STRINGP (args[0]) - && SBYTES (args[0]) == 0)) + if (Fequal(args[0],Qt)) { - message (0); - return args[0]; + register Lisp_Object val; + Lisp_Object argb[2]; + argb[0]=build_string("%s"); + argb[1]=args[1]; + val = Fformat (2, argb); + message3 (val, SBYTES (val), STRING_MULTIBYTE (val)); + return 1; } else { - register Lisp_Object val; - val = Fformat (nargs, args); - message3 (val, SBYTES (val), STRING_MULTIBYTE (val)); - return val; - } + if (NILP (args[0]) + || (STRINGP (args[0]) + && SBYTES (args[0]) == 0)) + { + message (0); + return args[0]; + } + else + { + register Lisp_Object val; + val = Fformat (nargs, args); + message3 (val, SBYTES (val), STRING_MULTIBYTE (val)); + return val; + }} } DEFUN ("message-box", Fmessage_box, Smessage_box, 1, MANY, 0,