[vim] - patchlevel 353

Karsten Hopp karsten at fedoraproject.org
Fri Dec 23 21:31:19 UTC 2011


commit 952ed818f9aa557c54a793327eb5761791b56423
Author: Karsten Hopp <karsten at redhat.com>
Date:   Fri Dec 23 22:30:48 2011 +0100

    - patchlevel 353

 7.3.353 |  155 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 155 insertions(+), 0 deletions(-)
---
diff --git a/7.3.353 b/7.3.353
new file mode 100644
index 0000000..1846243
--- /dev/null
+++ b/7.3.353
@@ -0,0 +1,155 @@
+To: vim_dev at googlegroups.com
+Subject: Patch 7.3.353
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.353 (after 7.3.343)
+Problem:    Missing part of the urxvt patch.
+Solution:   Add the change in term.c
+Files:	    src/term.c
+
+
+*** ../vim-7.3.352/src/term.c	2011-09-14 14:43:21.000000000 +0200
+--- src/term.c	2011-10-26 23:48:01.000000000 +0200
+***************
+*** 4008,4014 ****
+  	}
+  
+  #ifdef FEAT_TERMRESPONSE
+! 	if (key_name[0] == NUL)
+  	{
+  	    /* Check for xterm version string: "<Esc>[>{x};{vers};{y}c".  Also
+  	     * eat other possible responses to t_RV, rxvt returns
+--- 4008,4016 ----
+  	}
+  
+  #ifdef FEAT_TERMRESPONSE
+! 	if (key_name[0] == NUL
+! 	    /* URXVT mouse uses <ESC>[#;#;#M, but we are matching <ESC>[ */
+! 	    || key_name[0] == KS_URXVT_MOUSE)
+  	{
+  	    /* Check for xterm version string: "<Esc>[>{x};{vers};{y}c".  Also
+  	     * eat other possible responses to t_RV, rxvt returns
+***************
+*** 4047,4053 ****
+  		    if (tp[1 + (tp[0] != CSI)] == '>' && j == 2)
+  		    {
+  			/* if xterm version >= 95 use mouse dragging */
+! 			if (extra >= 95)
+  			    set_option_value((char_u *)"ttym", 0L,
+  						       (char_u *)"xterm2", 0);
+  			/* if xterm version >= 141 try to get termcap codes */
+--- 4049,4055 ----
+  		    if (tp[1 + (tp[0] != CSI)] == '>' && j == 2)
+  		    {
+  			/* if xterm version >= 95 use mouse dragging */
+! 			if (extra >= 95 && ttym_flags != TTYM_URXVT)
+  			    set_option_value((char_u *)"ttym", 0L,
+  						       (char_u *)"xterm2", 0);
+  			/* if xterm version >= 141 try to get termcap codes */
+***************
+*** 4141,4146 ****
+--- 4143,4151 ----
+  # ifdef FEAT_MOUSE_PTERM
+  		|| key_name[0] == (int)KS_PTERM_MOUSE
+  # endif
++ # ifdef FEAT_MOUSE_URXVT
++ 		|| key_name[0] == (int)KS_URXVT_MOUSE
++ # endif
+  		)
+  	{
+  	    is_click = is_drag = FALSE;
+***************
+*** 4219,4225 ****
+--- 4224,4292 ----
+  		    else
+  			break;
+  		}
++ 	    }
++ 
++ # ifdef FEAT_MOUSE_URXVT
++ 	    if (key_name[0] == (int)KS_URXVT_MOUSE)
++ 	    {
++ 		for (;;)
++ 		{
++ 		    /* URXVT 1015 mouse reporting mode:
++ 		     * Almost identical to xterm mouse mode, except the values
++ 		     * are decimal instead of bytes.
++ 		     *
++ 		     * \033[%d;%d;%dM
++ 		     *		  ^-- row
++ 		     *	       ^----- column
++ 		     *	    ^-------- code
++ 		     */
++ 		    p = tp + slen;
++ 
++ 		    mouse_code = getdigits(&p);
++ 		    if (*p++ != ';')
++ 			return -1;
++ 
++ 		    mouse_col = getdigits(&p) - 1;
++ 		    if (*p++ != ';')
++ 			return -1;
++ 
++ 		    mouse_row = getdigits(&p) - 1;
++ 		    if (*p++ != 'M')
++ 			return -1;
++ 
++ 		    slen += (int)(p - (tp + slen));
++ 
++ 		    /* skip this one if next one has same code (like xterm
++ 		     * case) */
++ 		    j = termcodes[idx].len;
++ 		    if (STRNCMP(tp, tp + slen, (size_t)j) == 0) {
++ 			/* check if the command is complete by looking for the
++ 			 * M */
++ 			int slen2;
++ 			int cmd_complete = 0;
++ 			for (slen2 = slen; slen2 < len; slen2++) {
++ 			    if (tp[slen2] == 'M') {
++ 				cmd_complete = 1;
++ 				break;
++ 			    }
++ 			}
++ 			p += j;
++ 			if (cmd_complete && getdigits(&p) == mouse_code) {
++ 			    slen += j; /* skip the \033[ */
++ 			    continue;
++ 			}
++ 		    }
++ 		    break;
++ 		}
++ 	    }
++ # endif
+  
++ 	if (key_name[0] == (int)KS_MOUSE
++ #ifdef FEAT_MOUSE_URXVT
++ 	    || key_name[0] == (int)KS_URXVT_MOUSE
++ #endif
++ 	    )
++ 	{
+  #  if !defined(MSWIN) && !defined(MSDOS)
+  		/*
+  		 * Handle mouse events.
+*** ../vim-7.3.352/src/version.c	2011-10-26 22:02:10.000000000 +0200
+--- src/version.c	2011-10-26 23:43:26.000000000 +0200
+***************
+*** 716,717 ****
+--- 716,719 ----
+  {   /* Add new patch number below this line */
++ /**/
++     353,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+99. The hum of a cooling fan and the click of keys is comforting to you.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\  an exciting new programming language -- http://www.Zimbu.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///


More information about the scm-commits mailing list