Mercurial > vim
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;