summaryrefslogtreecommitdiffstats
path: root/src/ex_getln.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2017-01-24 15:57:55 +0100
committerBram Moolenaar <Bram@vim.org>2017-01-24 15:57:55 +0100
commitabbc448bc09a292ec1263ffe69b4cb3d1c57f020 (patch)
treead55a98606f5133be379acb14f859d9e5e22c9c8 /src/ex_getln.c
parent2aa5f696b91a51f29873e340de4bdc182e1e8dd4 (diff)
patch 8.0.0228: pasting in xterm on the command line has PasteStartv8.0.0228
Problem: When pasting test in an xterm on the command line it is surrounded by <PasteStart> and <PasteEnd>. (Johannes Kaltenbach) Solution: Add missing changes.
Diffstat (limited to 'src/ex_getln.c')
-rw-r--r--src/ex_getln.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/ex_getln.c b/src/ex_getln.c
index 581c44492c..7de7246b55 100644
--- 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 */