]> granicus.if.org Git - vim/commitdiff
updated for version 7.3.483 v7.3.483
authorBram Moolenaar <Bram@vim.org>
Wed, 28 Mar 2012 14:49:29 +0000 (16:49 +0200)
committerBram Moolenaar <Bram@vim.org>
Wed, 28 Mar 2012 14:49:29 +0000 (16:49 +0200)
Problem:    More prompt shows up too often.
Solution:   Instead of adding a line break, only start a new line in the
            message history. (Christian Brabandt)

src/eval.c
src/message.c
src/proto/message.pro
src/version.c

index bfb72b1fc0ee78fcaecc923e66756a05400484ec..bf0363ab51421b746bfd86134a10b16c5de455ca 100644 (file)
@@ -20493,9 +20493,10 @@ ex_echo(eap)
                 * may cause a message to appear. */
                if (eap->cmdidx == CMD_echo)
                {
-                   /* Put the output below the command, makes scrolling back
-                    * at more prompt work. */
-                   msg_didout = TRUE;
+                   /* Mark the saved text as finishing the line, so that what
+                    * follows is displayed on a new line when scrolling back
+                    * at the more prompt. */
+                   msg_sb_eol();
                    msg_start();
                }
            }
index c9b6a28463c8944fd991d26c555fa8c898cf9e9e..b9cc93fa1c8fc9b04096b517be6b730fb924748a 100644 (file)
@@ -2347,6 +2347,16 @@ msg_sb_start(mps)
     return mp;
 }
 
+/*
+ * Mark the last message chunk as finishing the line.
+ */
+    void
+msg_sb_eol()
+{
+    if (last_msgchunk != NULL)
+       last_msgchunk->sb_eol = TRUE;
+}
+
 /*
  * Display a screen line from previously displayed text at row "row".
  * Returns a pointer to the text for the next line (can be NULL).
index a12f1200c758550f2d1c0cd3f0aa77593cc9ba78..f67b8e0313e8c40b6c85dada99f64574dd4a0fad 100644 (file)
@@ -45,6 +45,7 @@ void msg_puts_attr __ARGS((char_u *s, int attr));
 void may_clear_sb_text __ARGS((void));
 void clear_sb_text __ARGS((void));
 void show_sb_text __ARGS((void));
+void msg_sb_eol __ARGS((void));
 int msg_use_printf __ARGS((void));
 void mch_errmsg __ARGS((char *str));
 void mch_msg __ARGS((char *str));
index b9df08512c83073b528e88af0029f0df828c6d6d..988eb192eecfa4a329066d20f65e4f9e0bab6123 100644 (file)
@@ -714,6 +714,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    483,
 /**/
     482,
 /**/