changeset 100688:8233f3e2beb4

* textprop.c (Qminibuffer_prompt): New variable. (syms_of_textprop): Initialize it. * callint.c (Fcall_interactively): For `c', `k', and `K' prompt in minibuffer-prompt face. (Bug#1662)
author Martin Rudalics <rudalics@gmx.at>
date Fri, 26 Dec 2008 09:39:49 +0000
parents 245c01516a02
children eca026eee0d7
files src/ChangeLog src/callint.c src/textprop.c
diffstat 3 files changed, 23 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Fri Dec 26 02:31:57 2008 +0000
+++ b/src/ChangeLog	Fri Dec 26 09:39:49 2008 +0000
@@ -1,3 +1,10 @@
+2008-12-26  Martin Rudalics  <rudalics@gmx.at>
+
+	* textprop.c (Qminibuffer_prompt): New variable.
+	(syms_of_textprop): Initialize it.
+	* callint.c (Fcall_interactively): For `c', `k', and `K' prompt
+	in minibuffer-prompt face.  (Bug#1662)
+
 2008-12-25  Jason Rumney  <jasonr@gnu.org>
 
 	* buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
--- a/src/callint.c	Fri Dec 26 02:31:57 2008 +0000
+++ b/src/callint.c	Fri Dec 26 09:39:49 2008 +0000
@@ -45,6 +45,7 @@
 
 Lisp_Object Vcommand_debug_status, Qcommand_debug_status;
 Lisp_Object Qenable_recursive_minibuffers;
+extern Lisp_Object Qface, Qminibuffer_prompt;
 
 /* Non-nil means treat the mark as active
    even if mark_active is 0.  */
@@ -541,6 +542,10 @@
 	  break;
 
         case 'c':		/* Character */
+	  /* Prompt in `minibuffer-prompt' face.  */
+	  Fput_text_property (make_number (0),
+			      make_number (SCHARS (callint_message)),
+			      Qface, Qminibuffer_prompt, callint_message);
 	  args[i] = Fread_char (callint_message, Qnil, Qnil);
 	  message1_nolog ((char *) 0);
 	  /* Passing args[i] directly stimulates compiler bug */
@@ -594,6 +599,10 @@
 	  {
 	    int speccount1 = SPECPDL_INDEX ();
 	    specbind (Qcursor_in_echo_area, Qt);
+	    /* Prompt in `minibuffer-prompt' face.  */
+	    Fput_text_property (make_number (0),
+				make_number (SCHARS (callint_message)),
+				Qface, Qminibuffer_prompt, callint_message);
 	    args[i] = Fread_key_sequence (callint_message,
 					  Qnil, Qnil, Qnil, Qnil);
 	    unbind_to (speccount1, Qnil);
@@ -622,6 +631,10 @@
 	  {
 	    int speccount1 = SPECPDL_INDEX ();
 	    specbind (Qcursor_in_echo_area, Qt);
+	    /* Prompt in `minibuffer-prompt' face.  */
+	    Fput_text_property (make_number (0),
+				make_number (SCHARS (callint_message)),
+				Qface, Qminibuffer_prompt, callint_message);
 	    args[i] = Fread_key_sequence (callint_message,
 					  Qnil, Qt, Qnil, Qnil);
 	    teml = args[i];
--- a/src/textprop.c	Fri Dec 26 02:31:57 2008 +0000
+++ b/src/textprop.c	Fri Dec 26 09:39:49 2008 +0000
@@ -57,6 +57,7 @@
 /* Visual properties text (including strings) may have.  */
 Lisp_Object Qforeground, Qbackground, Qfont, Qunderline, Qstipple;
 Lisp_Object Qinvisible, Qread_only, Qintangible, Qmouse_face;
+Lisp_Object Qminibuffer_prompt;
 
 /* Sticky properties */
 Lisp_Object Qfront_sticky, Qrear_nonsticky;
@@ -2334,6 +2335,8 @@
   Qrear_nonsticky = intern ("rear-nonsticky");
   staticpro (&Qmouse_face);
   Qmouse_face = intern ("mouse-face");
+  staticpro (&Qminibuffer_prompt);
+  Qminibuffer_prompt = intern ("minibuffer-prompt");
 
   /* Properties that text might use to specify certain actions */