summaryrefslogtreecommitdiffstats
path: root/source/ap/vim/patches/7.3.353
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap/vim/patches/7.3.353')
-rw-r--r--source/ap/vim/patches/7.3.353155
1 files changed, 155 insertions, 0 deletions
diff --git a/source/ap/vim/patches/7.3.353 b/source/ap/vim/patches/7.3.353
new file mode 100644
index 000000000..1846243e8
--- /dev/null
+++ b/source/ap/vim/patches/7.3.353
@@ -0,0 +1,155 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 7.3.353
+Fcc: outbox
+From: Bram Moolenaar <Bram@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@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 ///