changeset 10676:b8c04c007d39 v8.0.0228

patch 8.0.0228: pasting in xterm on the command line has PasteStart commit https://github.com/vim/vim/commit/abbc448bc09a292ec1263ffe69b4cb3d1c57f020 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Jan 24 15:57:55 2017 +0100 patch 8.0.0228: pasting in xterm on the command line has PasteStart Problem: When pasting test in an xterm on the command line it is surrounded by <PasteStart> and <PasteEnd>. (Johannes Kaltenbach) Solution: Add missing changes.
author Christian Brabandt <cb@256bit.org>
date Tue, 24 Jan 2017 16:00:05 +0100
parents 4fc5b92e6ae4
children 7115ccc512be
files src/ex_getln.c src/term.c src/version.c
diffstat 3 files changed, 15 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -1794,6 +1794,10 @@ getcmdline(
 		goto cmdline_not_changed;
 #endif
 
+	case K_PS:
+		bracketed_paste(PASTE_CMDLINE, FALSE, NULL);
+		goto cmdline_changed;
+
 	default:
 #ifdef UNIX
 		if (c == intr_char)
@@ -2366,8 +2370,7 @@ getexmodeline(
 	if (ga_grow(&line_ga, 40) == FAIL)
 	    break;
 
-	/* Get one character at a time.  Don't use inchar(), it can't handle
-	 * special characters. */
+	/* Get one character at a time. */
 	prev_char = c1;
 	c1 = vgetc();
 
@@ -2382,6 +2385,12 @@ getexmodeline(
 	    break;
 	}
 
+	if (c1 == K_PS)
+	{
+	    bracketed_paste(PASTE_EX, FALSE, &line_ga);
+	    goto redraw;
+	}
+
 	if (!escaped)
 	{
 	    /* CR typed means "enter", which is NL */
--- a/src/term.c
+++ b/src/term.c
@@ -3148,7 +3148,7 @@ starttermcap(void)
     {
 	out_str(T_TI);			/* start termcap mode */
 	out_str(T_KS);			/* start "keypad transmit" mode */
-	out_str(T_BE);			/* enable bracketed paste moe */
+	out_str(T_BE);			/* enable bracketed paste mode */
 	out_flush();
 	termcap_active = TRUE;
 	screen_start();			/* don't know where cursor is now */
@@ -3198,7 +3198,7 @@ stoptermcap(void)
 	    check_for_codes_from_term();
 	}
 #endif
-	out_str(T_BD);			/* disable bracketed paste moe */
+	out_str(T_BD);			/* disable bracketed paste mode */
 	out_str(T_KE);			/* stop "keypad transmit" mode */
 	out_flush();
 	termcap_active = FALSE;
--- a/src/version.c
+++ b/src/version.c
@@ -765,6 +765,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    228,
+/**/
     227,
 /**/
     226,