Merge commit 'c8d55a4ffc9503371b9738188e056eba33134f47' into f18
Conflicts: README.patches vim.spec
This commit is contained in:
commit
77fc86d85a
92
7.3.623
Normal file
92
7.3.623
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.623
|
||||||
|
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.623
|
||||||
|
Problem: Perl 5.14 commands crash Vim on MS-Windows.
|
||||||
|
Solution: Use perl_get_sv() instead of GvSV(). (Raymond Ko)
|
||||||
|
Files: src/if_perl.xs
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.622/src/if_perl.xs 2012-03-16 19:34:43.000000000 +0100
|
||||||
|
--- src/if_perl.xs 2012-08-08 13:15:29.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 76,81 ****
|
||||||
|
--- 76,87 ----
|
||||||
|
# define EXTERN_C
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+ #if (PERL_REVISION == 5) && (PERL_VERSION >= 14) && defined(_MSC_VER)
|
||||||
|
+ /* Using PL_errgv to get the error message after perl_eval_sv() causes a crash
|
||||||
|
+ * with MSVC and Perl version 5.14. */
|
||||||
|
+ # define AVOID_PL_ERRGV
|
||||||
|
+ #endif
|
||||||
|
+
|
||||||
|
/* Compatibility hacks over */
|
||||||
|
|
||||||
|
static PerlInterpreter *perl_interp = NULL;
|
||||||
|
***************
|
||||||
|
*** 796,802 ****
|
||||||
|
--- 802,812 ----
|
||||||
|
|
||||||
|
SvREFCNT_dec(sv);
|
||||||
|
|
||||||
|
+ #ifdef AVOID_PL_ERRGV
|
||||||
|
+ err = SvPV(perl_get_sv("@", GV_ADD), length);
|
||||||
|
+ #else
|
||||||
|
err = SvPV(GvSV(PL_errgv), length);
|
||||||
|
+ #endif
|
||||||
|
|
||||||
|
FREETMPS;
|
||||||
|
LEAVE;
|
||||||
|
***************
|
||||||
|
*** 866,872 ****
|
||||||
|
--- 876,886 ----
|
||||||
|
sv_catpvn(sv, "}", 1);
|
||||||
|
perl_eval_sv(sv, G_DISCARD | G_NOARGS);
|
||||||
|
SvREFCNT_dec(sv);
|
||||||
|
+ #ifdef AVOID_PL_ERRGV
|
||||||
|
+ str = SvPV(perl_get_sv("@", GV_ADD), length);
|
||||||
|
+ #else
|
||||||
|
str = SvPV(GvSV(PL_errgv), length);
|
||||||
|
+ #endif
|
||||||
|
if (length)
|
||||||
|
goto err;
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 880,886 ****
|
||||||
|
--- 894,904 ----
|
||||||
|
sv_setpv(GvSV(PL_defgv), (char *)ml_get(i));
|
||||||
|
PUSHMARK(sp);
|
||||||
|
perl_call_pv("VIM::perldo", G_SCALAR | G_EVAL);
|
||||||
|
+ #ifdef AVOID_PL_ERRGV
|
||||||
|
+ str = SvPV(perl_get_sv("@", GV_ADD), length);
|
||||||
|
+ #else
|
||||||
|
str = SvPV(GvSV(PL_errgv), length);
|
||||||
|
+ #endif
|
||||||
|
if (length)
|
||||||
|
break;
|
||||||
|
SPAGAIN;
|
||||||
|
*** ../vim-7.3.622/src/version.c 2012-08-02 21:48:20.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-08 13:08:10.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 716,717 ****
|
||||||
|
--- 716,719 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 623,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Don't be humble ... you're not that great.
|
||||||
|
-- Golda Meir
|
||||||
|
|
||||||
|
/// 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 ///
|
52
7.3.624
Normal file
52
7.3.624
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.624
|
||||||
|
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.624
|
||||||
|
Problem: When cancelling input() it returns the third argument. That should
|
||||||
|
only happen for inputdialog().
|
||||||
|
Solution: Check if inputdialog() was used. (Hirohito Higashi)
|
||||||
|
Files: src/eval.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.623/src/eval.c 2012-07-25 16:46:59.000000000 +0200
|
||||||
|
--- src/eval.c 2012-08-08 14:31:48.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 12966,12972 ****
|
||||||
|
rettv->vval.v_string =
|
||||||
|
getcmdline_prompt(inputsecret_flag ? NUL : '@', p, echo_attr,
|
||||||
|
xp_type, xp_arg);
|
||||||
|
! if (rettv->vval.v_string == NULL
|
||||||
|
&& argvars[1].v_type != VAR_UNKNOWN
|
||||||
|
&& argvars[2].v_type != VAR_UNKNOWN)
|
||||||
|
rettv->vval.v_string = vim_strsave(get_tv_string_buf(
|
||||||
|
--- 12966,12972 ----
|
||||||
|
rettv->vval.v_string =
|
||||||
|
getcmdline_prompt(inputsecret_flag ? NUL : '@', p, echo_attr,
|
||||||
|
xp_type, xp_arg);
|
||||||
|
! if (inputdialog && rettv->vval.v_string == NULL
|
||||||
|
&& argvars[1].v_type != VAR_UNKNOWN
|
||||||
|
&& argvars[2].v_type != VAR_UNKNOWN)
|
||||||
|
rettv->vval.v_string = vim_strsave(get_tv_string_buf(
|
||||||
|
*** ../vim-7.3.623/src/version.c 2012-08-08 13:17:26.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-08 14:28:46.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 716,717 ****
|
||||||
|
--- 716,719 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 624,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Your fault: core dumped
|
||||||
|
|
||||||
|
/// 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 ///
|
140
7.3.625
Normal file
140
7.3.625
Normal file
@ -0,0 +1,140 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.625
|
||||||
|
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.625
|
||||||
|
Problem: "gn" does not handle zero-width matches correctly.
|
||||||
|
Solution: Handle zero-width patterns specially. (Christian Brabandt)
|
||||||
|
Files: src/search.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.624/src/search.c 2012-08-02 21:24:38.000000000 +0200
|
||||||
|
--- src/search.c 2012-08-08 15:25:12.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 4546,4551 ****
|
||||||
|
--- 4546,4554 ----
|
||||||
|
int visual_active = FALSE;
|
||||||
|
int flags = 0;
|
||||||
|
pos_T save_VIsual;
|
||||||
|
+ regmmatch_T regmatch;
|
||||||
|
+ int nmatched = 0;
|
||||||
|
+ int zerowidth = FALSE;
|
||||||
|
|
||||||
|
|
||||||
|
/* wrapping should not occur */
|
||||||
|
***************
|
||||||
|
*** 4581,4603 ****
|
||||||
|
orig_pos = pos = start_pos = curwin->w_cursor;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The trick is to first search backwards and then search forward again,
|
||||||
|
* so that a match at the current cursor position will be correctly
|
||||||
|
* captured.
|
||||||
|
*/
|
||||||
|
for (i = 0; i < 2; i++)
|
||||||
|
{
|
||||||
|
- if (i && count == 1)
|
||||||
|
- flags = SEARCH_START;
|
||||||
|
-
|
||||||
|
if (forward)
|
||||||
|
dir = i;
|
||||||
|
else
|
||||||
|
dir = !i;
|
||||||
|
result = searchit(curwin, curbuf, &pos, (dir ? FORWARD : BACKWARD),
|
||||||
|
spats[last_idx].pat, (long) (i ? count : 1),
|
||||||
|
! SEARCH_KEEP | flags | (dir ? 0 : SEARCH_END),
|
||||||
|
! RE_SEARCH, 0, NULL);
|
||||||
|
|
||||||
|
/* First search may fail, but then start searching from the
|
||||||
|
* beginning of the file (cursor might be on the search match)
|
||||||
|
--- 4584,4625 ----
|
||||||
|
orig_pos = pos = start_pos = curwin->w_cursor;
|
||||||
|
|
||||||
|
/*
|
||||||
|
+ * Check for zero-width pattern.
|
||||||
|
+ */
|
||||||
|
+ if (search_regcomp(spats[last_idx].pat, RE_SEARCH, RE_SEARCH,
|
||||||
|
+ ((SEARCH_HIS + SEARCH_KEEP)), ®match) == FAIL)
|
||||||
|
+ return FAIL;
|
||||||
|
+
|
||||||
|
+ /* Zero-width pattern should match somewhere, then we can check if start
|
||||||
|
+ * and end are in the same position. */
|
||||||
|
+ nmatched = vim_regexec_multi(®match, curwin, curbuf,
|
||||||
|
+ curwin->w_cursor.lnum, (colnr_T)0, NULL);
|
||||||
|
+ if (called_emsg)
|
||||||
|
+ return FAIL;
|
||||||
|
+ if (nmatched && regmatch.startpos[0].lnum == regmatch.endpos[0].lnum
|
||||||
|
+ && regmatch.endpos[0].col == regmatch.startpos[0].col)
|
||||||
|
+ zerowidth = TRUE;
|
||||||
|
+ vim_free(regmatch.regprog);
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
* The trick is to first search backwards and then search forward again,
|
||||||
|
* so that a match at the current cursor position will be correctly
|
||||||
|
* captured.
|
||||||
|
*/
|
||||||
|
for (i = 0; i < 2; i++)
|
||||||
|
{
|
||||||
|
if (forward)
|
||||||
|
dir = i;
|
||||||
|
else
|
||||||
|
dir = !i;
|
||||||
|
+
|
||||||
|
+ flags = 0;
|
||||||
|
+ if (!dir && !zerowidth)
|
||||||
|
+ flags = SEARCH_END;
|
||||||
|
+
|
||||||
|
result = searchit(curwin, curbuf, &pos, (dir ? FORWARD : BACKWARD),
|
||||||
|
spats[last_idx].pat, (long) (i ? count : 1),
|
||||||
|
! SEARCH_KEEP | flags, RE_SEARCH, 0, NULL);
|
||||||
|
|
||||||
|
/* First search may fail, but then start searching from the
|
||||||
|
* beginning of the file (cursor might be on the search match)
|
||||||
|
***************
|
||||||
|
*** 4629,4638 ****
|
||||||
|
}
|
||||||
|
|
||||||
|
start_pos = pos;
|
||||||
|
! flags = (forward ? SEARCH_END : 0);
|
||||||
|
|
||||||
|
! /* move to match */
|
||||||
|
! result = searchit(curwin, curbuf, &pos, (forward ? FORWARD : BACKWARD),
|
||||||
|
spats[last_idx].pat, 0L, flags | SEARCH_KEEP, RE_SEARCH, 0, NULL);
|
||||||
|
|
||||||
|
if (!VIsual_active)
|
||||||
|
--- 4651,4662 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
start_pos = pos;
|
||||||
|
! flags = forward ? SEARCH_END : 0;
|
||||||
|
|
||||||
|
! /* move to match, except for zero-width matches, in which case, we are
|
||||||
|
! * already on the next match */
|
||||||
|
! if (!zerowidth)
|
||||||
|
! result = searchit(curwin, curbuf, &pos, (forward ? FORWARD : BACKWARD),
|
||||||
|
spats[last_idx].pat, 0L, flags | SEARCH_KEEP, RE_SEARCH, 0, NULL);
|
||||||
|
|
||||||
|
if (!VIsual_active)
|
||||||
|
*** ../vim-7.3.624/src/version.c 2012-08-08 14:33:16.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-08 15:21:53.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 716,717 ****
|
||||||
|
--- 716,719 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 625,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
222. You send more than 20 personal e-mails a day.
|
||||||
|
|
||||||
|
/// 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 ///
|
49
7.3.626
Normal file
49
7.3.626
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.626
|
||||||
|
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.626
|
||||||
|
Problem: Python interface doesn't build with Python 2.4 or older.
|
||||||
|
Solution: Define Py_ssize_t. (Benjamin Bannier)
|
||||||
|
Files: src/if_py_both.h
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.625/src/if_py_both.h 2012-07-25 15:36:00.000000000 +0200
|
||||||
|
--- src/if_py_both.h 2012-08-08 15:53:24.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 12,17 ****
|
||||||
|
--- 12,21 ----
|
||||||
|
* Common code for if_python.c and if_python3.c.
|
||||||
|
*/
|
||||||
|
|
||||||
|
+ #if PY_VERSION_HEX < 0x02050000
|
||||||
|
+ typedef int Py_ssize_t; /* Python 2.4 and earlier don't have this type. */
|
||||||
|
+ #endif
|
||||||
|
+
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
# define ENC_OPT p_enc
|
||||||
|
#else
|
||||||
|
*** ../vim-7.3.625/src/version.c 2012-08-08 15:27:54.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-08 15:52:07.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 716,717 ****
|
||||||
|
--- 716,719 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 626,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
224. You set up your own Web page. You set up a Web page for each
|
||||||
|
of your kids... and your pets.
|
||||||
|
|
||||||
|
/// 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 ///
|
102
7.3.627
Normal file
102
7.3.627
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.627
|
||||||
|
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.627
|
||||||
|
Problem: When using the "n" flag with the ":s" command a \= substitution
|
||||||
|
will not be evaluated.
|
||||||
|
Solution: Do perform the evaluation, so that a function can be invoked at
|
||||||
|
every matching position without changing the text. (Christian
|
||||||
|
Brabandt)
|
||||||
|
Files: src/ex_cmds.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.626/src/ex_cmds.c 2012-07-10 15:18:18.000000000 +0200
|
||||||
|
--- src/ex_cmds.c 2012-08-08 16:44:16.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 4264,4269 ****
|
||||||
|
--- 4264,4272 ----
|
||||||
|
int endcolumn = FALSE; /* cursor in last column when done */
|
||||||
|
pos_T old_cursor = curwin->w_cursor;
|
||||||
|
int start_nsubs;
|
||||||
|
+ #ifdef FEAT_EVAL
|
||||||
|
+ int save_ma = 0;
|
||||||
|
+ #endif
|
||||||
|
|
||||||
|
cmd = eap->arg;
|
||||||
|
if (!global_busy)
|
||||||
|
***************
|
||||||
|
*** 4668,4674 ****
|
||||||
|
}
|
||||||
|
sub_nsubs++;
|
||||||
|
did_sub = TRUE;
|
||||||
|
! goto skip;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (do_ask)
|
||||||
|
--- 4671,4682 ----
|
||||||
|
}
|
||||||
|
sub_nsubs++;
|
||||||
|
did_sub = TRUE;
|
||||||
|
! #ifdef FEAT_EVAL
|
||||||
|
! /* Skip the substitution, unless an expression is used,
|
||||||
|
! * then it is evaluated in the sandbox. */
|
||||||
|
! if (!(sub[0] == '\\' && sub[1] == '='))
|
||||||
|
! #endif
|
||||||
|
! goto skip;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (do_ask)
|
||||||
|
***************
|
||||||
|
*** 4840,4849 ****
|
||||||
|
--- 4848,4874 ----
|
||||||
|
/*
|
||||||
|
* 3. substitute the string.
|
||||||
|
*/
|
||||||
|
+ #ifdef FEAT_EVAL
|
||||||
|
+ if (do_count)
|
||||||
|
+ {
|
||||||
|
+ /* prevent accidently changing the buffer by a function */
|
||||||
|
+ save_ma = curbuf->b_p_ma;
|
||||||
|
+ curbuf->b_p_ma = FALSE;
|
||||||
|
+ sandbox++;
|
||||||
|
+ }
|
||||||
|
+ #endif
|
||||||
|
/* get length of substitution part */
|
||||||
|
sublen = vim_regsub_multi(®match,
|
||||||
|
sub_firstlnum - regmatch.startpos[0].lnum,
|
||||||
|
sub, sub_firstline, FALSE, p_magic, TRUE);
|
||||||
|
+ #ifdef FEAT_EVAL
|
||||||
|
+ if (do_count)
|
||||||
|
+ {
|
||||||
|
+ curbuf->b_p_ma = save_ma;
|
||||||
|
+ sandbox--;
|
||||||
|
+ goto skip;
|
||||||
|
+ }
|
||||||
|
+ #endif
|
||||||
|
|
||||||
|
/* When the match included the "$" of the last line it may
|
||||||
|
* go beyond the last line of the buffer. */
|
||||||
|
*** ../vim-7.3.626/src/version.c 2012-08-08 16:05:03.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-08 16:48:45.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 716,717 ****
|
||||||
|
--- 716,719 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 627,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
225. You sign up for free subscriptions for all the computer magazines
|
||||||
|
|
||||||
|
/// 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 ///
|
54
7.3.628
Normal file
54
7.3.628
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.628
|
||||||
|
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.628
|
||||||
|
Problem: ":open" does not allow for a !, which results in a confusing error
|
||||||
|
message. (Shawn Wilson)
|
||||||
|
Solution: Allow ! on ":open". (Christian Brabandt)
|
||||||
|
Files: src/ex_cmds.h
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.627/src/ex_cmds.h 2012-07-06 18:27:34.000000000 +0200
|
||||||
|
--- src/ex_cmds.h 2012-08-08 17:15:45.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 662,668 ****
|
||||||
|
EX(CMD_nunmenu, "nunmenu", ex_menu,
|
||||||
|
EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN),
|
||||||
|
EX(CMD_open, "open", ex_open,
|
||||||
|
! RANGE|EXTRA),
|
||||||
|
EX(CMD_oldfiles, "oldfiles", ex_oldfiles,
|
||||||
|
BANG|TRLBAR|SBOXOK|CMDWIN),
|
||||||
|
EX(CMD_omap, "omap", ex_map,
|
||||||
|
--- 662,668 ----
|
||||||
|
EX(CMD_nunmenu, "nunmenu", ex_menu,
|
||||||
|
EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN),
|
||||||
|
EX(CMD_open, "open", ex_open,
|
||||||
|
! RANGE|BANG|EXTRA),
|
||||||
|
EX(CMD_oldfiles, "oldfiles", ex_oldfiles,
|
||||||
|
BANG|TRLBAR|SBOXOK|CMDWIN),
|
||||||
|
EX(CMD_omap, "omap", ex_map,
|
||||||
|
*** ../vim-7.3.627/src/version.c 2012-08-08 16:50:40.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-08 17:30:14.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 716,717 ****
|
||||||
|
--- 716,719 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 628,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
226. You sit down at the computer right after dinner and your spouse
|
||||||
|
says "See you in the morning."
|
||||||
|
|
||||||
|
/// 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 ///
|
437
7.3.629
Normal file
437
7.3.629
Normal file
@ -0,0 +1,437 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.629
|
||||||
|
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.629
|
||||||
|
Problem: There is no way to make 'shiftwidth' follow 'tabstop'.
|
||||||
|
Solution: When 'shiftwidth' is zero use the value of 'tabstop'. (Christian
|
||||||
|
Brabandt)
|
||||||
|
Files: src/edit.c, src/ex_getln.c, src/fold.c, src/misc1.c, src/ops.c,
|
||||||
|
src/option.c, src/proto/option.pro
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.628/src/edit.c 2012-07-25 16:46:59.000000000 +0200
|
||||||
|
--- src/edit.c 2012-08-08 17:55:37.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 8899,8907 ****
|
||||||
|
|
||||||
|
*inserted_space_p = FALSE;
|
||||||
|
if (p_sta && in_indent)
|
||||||
|
! ts = curbuf->b_p_sw;
|
||||||
|
else
|
||||||
|
! ts = curbuf->b_p_sts;
|
||||||
|
/* Compute the virtual column where we want to be. Since
|
||||||
|
* 'showbreak' may get in the way, need to get the last column of
|
||||||
|
* the previous character. */
|
||||||
|
--- 8899,8907 ----
|
||||||
|
|
||||||
|
*inserted_space_p = FALSE;
|
||||||
|
if (p_sta && in_indent)
|
||||||
|
! ts = (int)get_sw_value();
|
||||||
|
else
|
||||||
|
! ts = (int)curbuf->b_p_sts;
|
||||||
|
/* Compute the virtual column where we want to be. Since
|
||||||
|
* 'showbreak' may get in the way, need to get the last column of
|
||||||
|
* the previous character. */
|
||||||
|
***************
|
||||||
|
*** 9589,9595 ****
|
||||||
|
* When nothing special, insert TAB like a normal character
|
||||||
|
*/
|
||||||
|
if (!curbuf->b_p_et
|
||||||
|
! && !(p_sta && ind && curbuf->b_p_ts != curbuf->b_p_sw)
|
||||||
|
&& curbuf->b_p_sts == 0)
|
||||||
|
return TRUE;
|
||||||
|
|
||||||
|
--- 9589,9595 ----
|
||||||
|
* When nothing special, insert TAB like a normal character
|
||||||
|
*/
|
||||||
|
if (!curbuf->b_p_et
|
||||||
|
! && !(p_sta && ind && curbuf->b_p_ts != get_sw_value())
|
||||||
|
&& curbuf->b_p_sts == 0)
|
||||||
|
return TRUE;
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 9605,9611 ****
|
||||||
|
AppendToRedobuff((char_u *)"\t");
|
||||||
|
|
||||||
|
if (p_sta && ind) /* insert tab in indent, use 'shiftwidth' */
|
||||||
|
! temp = (int)curbuf->b_p_sw;
|
||||||
|
else if (curbuf->b_p_sts > 0) /* use 'softtabstop' when set */
|
||||||
|
temp = (int)curbuf->b_p_sts;
|
||||||
|
else /* otherwise use 'tabstop' */
|
||||||
|
--- 9605,9611 ----
|
||||||
|
AppendToRedobuff((char_u *)"\t");
|
||||||
|
|
||||||
|
if (p_sta && ind) /* insert tab in indent, use 'shiftwidth' */
|
||||||
|
! temp = (int)get_sw_value();
|
||||||
|
else if (curbuf->b_p_sts > 0) /* use 'softtabstop' when set */
|
||||||
|
temp = (int)curbuf->b_p_sts;
|
||||||
|
else /* otherwise use 'tabstop' */
|
||||||
|
*** ../vim-7.3.628/src/ex_getln.c 2012-06-29 13:44:37.000000000 +0200
|
||||||
|
--- src/ex_getln.c 2012-08-08 17:39:40.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 2268,2277 ****
|
||||||
|
|
||||||
|
if (c1 == Ctrl_T)
|
||||||
|
{
|
||||||
|
p = (char_u *)line_ga.ga_data;
|
||||||
|
p[line_ga.ga_len] = NUL;
|
||||||
|
indent = get_indent_str(p, 8);
|
||||||
|
! indent += curbuf->b_p_sw - indent % curbuf->b_p_sw;
|
||||||
|
add_indent:
|
||||||
|
while (get_indent_str(p, 8) < indent)
|
||||||
|
{
|
||||||
|
--- 2268,2279 ----
|
||||||
|
|
||||||
|
if (c1 == Ctrl_T)
|
||||||
|
{
|
||||||
|
+ long sw = get_sw_value();
|
||||||
|
+
|
||||||
|
p = (char_u *)line_ga.ga_data;
|
||||||
|
p[line_ga.ga_len] = NUL;
|
||||||
|
indent = get_indent_str(p, 8);
|
||||||
|
! indent += sw - indent % sw;
|
||||||
|
add_indent:
|
||||||
|
while (get_indent_str(p, 8) < indent)
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 2323,2329 ****
|
||||||
|
p[line_ga.ga_len] = NUL;
|
||||||
|
indent = get_indent_str(p, 8);
|
||||||
|
--indent;
|
||||||
|
! indent -= indent % curbuf->b_p_sw;
|
||||||
|
}
|
||||||
|
while (get_indent_str(p, 8) > indent)
|
||||||
|
{
|
||||||
|
--- 2325,2331 ----
|
||||||
|
p[line_ga.ga_len] = NUL;
|
||||||
|
indent = get_indent_str(p, 8);
|
||||||
|
--indent;
|
||||||
|
! indent -= indent % get_sw_value();
|
||||||
|
}
|
||||||
|
while (get_indent_str(p, 8) > indent)
|
||||||
|
{
|
||||||
|
*** ../vim-7.3.628/src/fold.c 2012-02-29 19:19:57.000000000 +0100
|
||||||
|
--- src/fold.c 2012-08-08 17:40:11.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 3025,3031 ****
|
||||||
|
flp->lvl = -1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
! flp->lvl = get_indent_buf(buf, lnum) / buf->b_p_sw;
|
||||||
|
if (flp->lvl > flp->wp->w_p_fdn)
|
||||||
|
{
|
||||||
|
flp->lvl = flp->wp->w_p_fdn;
|
||||||
|
--- 3025,3031 ----
|
||||||
|
flp->lvl = -1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
! flp->lvl = get_indent_buf(buf, lnum) / get_sw_value();
|
||||||
|
if (flp->lvl > flp->wp->w_p_fdn)
|
||||||
|
{
|
||||||
|
flp->lvl = flp->wp->w_p_fdn;
|
||||||
|
*** ../vim-7.3.628/src/misc1.c 2012-07-25 16:09:59.000000000 +0200
|
||||||
|
--- src/misc1.c 2012-08-08 17:43:07.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 1389,1397 ****
|
||||||
|
#ifdef FEAT_SMARTINDENT
|
||||||
|
if (did_si)
|
||||||
|
{
|
||||||
|
if (p_sr)
|
||||||
|
! newindent -= newindent % (int)curbuf->b_p_sw;
|
||||||
|
! newindent += (int)curbuf->b_p_sw;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
/* Copy the indent */
|
||||||
|
--- 1389,1399 ----
|
||||||
|
#ifdef FEAT_SMARTINDENT
|
||||||
|
if (did_si)
|
||||||
|
{
|
||||||
|
+ int sw = (int)get_sw_value();
|
||||||
|
+
|
||||||
|
if (p_sr)
|
||||||
|
! newindent -= newindent % sw;
|
||||||
|
! newindent += sw;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
/* Copy the indent */
|
||||||
|
***************
|
||||||
|
*** 6461,6471 ****
|
||||||
|
int
|
||||||
|
get_c_indent()
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* spaces from a block's opening brace the prevailing indent for that
|
||||||
|
* block should be
|
||||||
|
*/
|
||||||
|
! int ind_level = curbuf->b_p_sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* spaces from the edge of the line an open brace that's at the end of a
|
||||||
|
--- 6463,6476 ----
|
||||||
|
int
|
||||||
|
get_c_indent()
|
||||||
|
{
|
||||||
|
+ int sw = (int)get_sw_value();
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* spaces from a block's opening brace the prevailing indent for that
|
||||||
|
* block should be
|
||||||
|
*/
|
||||||
|
!
|
||||||
|
! int ind_level = sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* spaces from the edge of the line an open brace that's at the end of a
|
||||||
|
***************
|
||||||
|
*** 6512,6523 ****
|
||||||
|
/*
|
||||||
|
* spaces from the switch() indent a "case xx" label should be located
|
||||||
|
*/
|
||||||
|
! int ind_case = curbuf->b_p_sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* spaces from the "case xx:" code after a switch() should be located
|
||||||
|
*/
|
||||||
|
! int ind_case_code = curbuf->b_p_sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* lineup break at end of case in switch() with case label
|
||||||
|
--- 6517,6528 ----
|
||||||
|
/*
|
||||||
|
* spaces from the switch() indent a "case xx" label should be located
|
||||||
|
*/
|
||||||
|
! int ind_case = sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* spaces from the "case xx:" code after a switch() should be located
|
||||||
|
*/
|
||||||
|
! int ind_case_code = sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* lineup break at end of case in switch() with case label
|
||||||
|
***************
|
||||||
|
*** 6528,6572 ****
|
||||||
|
* spaces from the class declaration indent a scope declaration label
|
||||||
|
* should be located
|
||||||
|
*/
|
||||||
|
! int ind_scopedecl = curbuf->b_p_sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* spaces from the scope declaration label code should be located
|
||||||
|
*/
|
||||||
|
! int ind_scopedecl_code = curbuf->b_p_sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* amount K&R-style parameters should be indented
|
||||||
|
*/
|
||||||
|
! int ind_param = curbuf->b_p_sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* amount a function type spec should be indented
|
||||||
|
*/
|
||||||
|
! int ind_func_type = curbuf->b_p_sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* amount a cpp base class declaration or constructor initialization
|
||||||
|
* should be indented
|
||||||
|
*/
|
||||||
|
! int ind_cpp_baseclass = curbuf->b_p_sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* additional spaces beyond the prevailing indent a continuation line
|
||||||
|
* should be located
|
||||||
|
*/
|
||||||
|
! int ind_continuation = curbuf->b_p_sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* spaces from the indent of the line with an unclosed parentheses
|
||||||
|
*/
|
||||||
|
! int ind_unclosed = curbuf->b_p_sw * 2;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* spaces from the indent of the line with an unclosed parentheses, which
|
||||||
|
* itself is also unclosed
|
||||||
|
*/
|
||||||
|
! int ind_unclosed2 = curbuf->b_p_sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* suppress ignoring spaces from the indent of a line starting with an
|
||||||
|
--- 6533,6577 ----
|
||||||
|
* spaces from the class declaration indent a scope declaration label
|
||||||
|
* should be located
|
||||||
|
*/
|
||||||
|
! int ind_scopedecl = sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* spaces from the scope declaration label code should be located
|
||||||
|
*/
|
||||||
|
! int ind_scopedecl_code = sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* amount K&R-style parameters should be indented
|
||||||
|
*/
|
||||||
|
! int ind_param = sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* amount a function type spec should be indented
|
||||||
|
*/
|
||||||
|
! int ind_func_type = sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* amount a cpp base class declaration or constructor initialization
|
||||||
|
* should be indented
|
||||||
|
*/
|
||||||
|
! int ind_cpp_baseclass = sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* additional spaces beyond the prevailing indent a continuation line
|
||||||
|
* should be located
|
||||||
|
*/
|
||||||
|
! int ind_continuation = sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* spaces from the indent of the line with an unclosed parentheses
|
||||||
|
*/
|
||||||
|
! int ind_unclosed = sw * 2;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* spaces from the indent of the line with an unclosed parentheses, which
|
||||||
|
* itself is also unclosed
|
||||||
|
*/
|
||||||
|
! int ind_unclosed2 = sw;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* suppress ignoring spaces from the indent of a line starting with an
|
||||||
|
***************
|
||||||
|
*** 6719,6730 ****
|
||||||
|
if (*options == 's') /* "2s" means two times 'shiftwidth' */
|
||||||
|
{
|
||||||
|
if (options == digits)
|
||||||
|
! n = curbuf->b_p_sw; /* just "s" is one 'shiftwidth' */
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! n *= curbuf->b_p_sw;
|
||||||
|
if (divider)
|
||||||
|
! n += (curbuf->b_p_sw * fraction + divider / 2) / divider;
|
||||||
|
}
|
||||||
|
++options;
|
||||||
|
}
|
||||||
|
--- 6724,6735 ----
|
||||||
|
if (*options == 's') /* "2s" means two times 'shiftwidth' */
|
||||||
|
{
|
||||||
|
if (options == digits)
|
||||||
|
! n = sw; /* just "s" is one 'shiftwidth' */
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! n *= sw;
|
||||||
|
if (divider)
|
||||||
|
! n += (sw * fraction + divider / 2) / divider;
|
||||||
|
}
|
||||||
|
++options;
|
||||||
|
}
|
||||||
|
*** ../vim-7.3.628/src/ops.c 2012-07-10 16:49:08.000000000 +0200
|
||||||
|
--- src/ops.c 2012-08-08 17:34:28.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 332,338 ****
|
||||||
|
{
|
||||||
|
int count;
|
||||||
|
int i, j;
|
||||||
|
! int p_sw = (int)curbuf->b_p_sw;
|
||||||
|
|
||||||
|
count = get_indent(); /* get current indent */
|
||||||
|
|
||||||
|
--- 332,338 ----
|
||||||
|
{
|
||||||
|
int count;
|
||||||
|
int i, j;
|
||||||
|
! int p_sw = (int)get_sw_value();
|
||||||
|
|
||||||
|
count = get_indent(); /* get current indent */
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 388,394 ****
|
||||||
|
int total;
|
||||||
|
char_u *newp, *oldp;
|
||||||
|
int oldcol = curwin->w_cursor.col;
|
||||||
|
! int p_sw = (int)curbuf->b_p_sw;
|
||||||
|
int p_ts = (int)curbuf->b_p_ts;
|
||||||
|
struct block_def bd;
|
||||||
|
int incr;
|
||||||
|
--- 388,394 ----
|
||||||
|
int total;
|
||||||
|
char_u *newp, *oldp;
|
||||||
|
int oldcol = curwin->w_cursor.col;
|
||||||
|
! int p_sw = (int)get_sw_value();
|
||||||
|
int p_ts = (int)curbuf->b_p_ts;
|
||||||
|
struct block_def bd;
|
||||||
|
int incr;
|
||||||
|
*** ../vim-7.3.628/src/option.c 2012-07-10 18:31:49.000000000 +0200
|
||||||
|
--- src/option.c 2012-08-08 17:45:01.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 8125,8131 ****
|
||||||
|
need_mouse_correct = TRUE;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
! if (curbuf->b_p_sw <= 0)
|
||||||
|
{
|
||||||
|
errmsg = e_positive;
|
||||||
|
curbuf->b_p_sw = curbuf->b_p_ts;
|
||||||
|
--- 8125,8131 ----
|
||||||
|
need_mouse_correct = TRUE;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
! if (curbuf->b_p_sw < 0)
|
||||||
|
{
|
||||||
|
errmsg = e_positive;
|
||||||
|
curbuf->b_p_sw = curbuf->b_p_ts;
|
||||||
|
***************
|
||||||
|
*** 11419,11421 ****
|
||||||
|
--- 11419,11431 ----
|
||||||
|
{
|
||||||
|
return check_opt_strings(p, p_ff_values, FALSE);
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Return the effective shiftwidth value for current buffer, using the
|
||||||
|
+ * 'tabstop' value when 'shiftwidth' is zero.
|
||||||
|
+ */
|
||||||
|
+ long
|
||||||
|
+ get_sw_value()
|
||||||
|
+ {
|
||||||
|
+ return curbuf->b_p_sw ? curbuf->b_p_sw : curbuf->b_p_ts;
|
||||||
|
+ }
|
||||||
|
*** ../vim-7.3.628/src/proto/option.pro 2011-01-22 00:11:42.000000000 +0100
|
||||||
|
--- src/proto/option.pro 2012-08-08 17:34:33.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 56,59 ****
|
||||||
|
--- 56,60 ----
|
||||||
|
void save_file_ff __ARGS((buf_T *buf));
|
||||||
|
int file_ff_differs __ARGS((buf_T *buf, int ignore_empty));
|
||||||
|
int check_ff_value __ARGS((char_u *p));
|
||||||
|
+ long get_sw_value __ARGS((void));
|
||||||
|
/* vim: set ft=c : */
|
||||||
|
*** ../vim-7.3.628/src/version.c 2012-08-08 17:31:36.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-08 17:57:48.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 716,717 ****
|
||||||
|
--- 716,719 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 629,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
228. You spend Saturday night making the counter on your home page
|
||||||
|
pass that 2000 mark.
|
||||||
|
|
||||||
|
/// 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 ///
|
48
7.3.630
Normal file
48
7.3.630
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.630
|
||||||
|
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.630
|
||||||
|
Problem: "|" does not behave correctly when 'virtualedit' is set.
|
||||||
|
Solution: Call validate_virtcol(). (David Bürgin)
|
||||||
|
Files: src/normal.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.629/src/normal.c 2012-07-29 12:55:21.000000000 +0200
|
||||||
|
--- src/normal.c 2012-08-15 13:20:13.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 7786,7792 ****
|
||||||
|
--- 7786,7795 ----
|
||||||
|
* virtualedit. Recalculate curwin->w_cursor to avoid bad hilighting.
|
||||||
|
*/
|
||||||
|
if (c == Ctrl_V && (ve_flags & VE_BLOCK) && gchar_cursor() == TAB)
|
||||||
|
+ {
|
||||||
|
+ validate_virtcol();
|
||||||
|
coladvance(curwin->w_virtcol);
|
||||||
|
+ }
|
||||||
|
#endif
|
||||||
|
VIsual = curwin->w_cursor;
|
||||||
|
|
||||||
|
*** ../vim-7.3.629/src/version.c 2012-08-08 18:01:00.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-15 13:30:30.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 716,717 ****
|
||||||
|
--- 716,719 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 630,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
"Marriage is when a man and woman become as one; the trouble starts
|
||||||
|
when they try to decide which one"
|
||||||
|
|
||||||
|
/// 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 ///
|
322
7.3.631
Normal file
322
7.3.631
Normal file
@ -0,0 +1,322 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.631
|
||||||
|
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.631
|
||||||
|
Problem: Cannot complete user names.
|
||||||
|
Solution: Add user name completion. (Dominique Pelle)
|
||||||
|
Files: runtime/doc/map.txt, src/auto/configure, src/config.h.in,
|
||||||
|
src/configure.in, src/ex_docmd.c, src/ex_getln.c,
|
||||||
|
src/misc1.c, src/misc2.c, src/proto/misc1.pro, src/vim.h
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.630/runtime/doc/map.txt 2012-04-30 18:48:38.000000000 +0200
|
||||||
|
--- runtime/doc/map.txt 2012-08-15 13:46:34.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 1227,1232 ****
|
||||||
|
--- 1244,1250 ----
|
||||||
|
-complete=syntax syntax file names |'syntax'|
|
||||||
|
-complete=tag tags
|
||||||
|
-complete=tag_listfiles tags, file names are shown when CTRL-D is hit
|
||||||
|
+ -complete=user user names
|
||||||
|
-complete=var user variables
|
||||||
|
-complete=custom,{func} custom completion, defined via {func}
|
||||||
|
-complete=customlist,{func} custom completion, defined via {func}
|
||||||
|
*** ../vim-7.3.630/src/auto/configure 2012-07-25 16:32:03.000000000 +0200
|
||||||
|
--- src/auto/configure 2012-08-15 13:48:06.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 10631,10637 ****
|
||||||
|
fi
|
||||||
|
|
||||||
|
for ac_func in bcmp fchdir fchown fsync getcwd getpseudotty \
|
||||||
|
! getpwnam getpwuid getrlimit gettimeofday getwd lstat memcmp \
|
||||||
|
memset mkdtemp nanosleep opendir putenv qsort readlink select setenv \
|
||||||
|
setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \
|
||||||
|
sigvec strcasecmp strerror strftime stricmp strncasecmp \
|
||||||
|
--- 10631,10637 ----
|
||||||
|
fi
|
||||||
|
|
||||||
|
for ac_func in bcmp fchdir fchown fsync getcwd getpseudotty \
|
||||||
|
! getpwent getpwnam getpwuid getrlimit gettimeofday getwd lstat memcmp \
|
||||||
|
memset mkdtemp nanosleep opendir putenv qsort readlink select setenv \
|
||||||
|
setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \
|
||||||
|
sigvec strcasecmp strerror strftime stricmp strncasecmp \
|
||||||
|
*** ../vim-7.3.630/src/config.h.in 2012-02-05 22:51:27.000000000 +0100
|
||||||
|
--- src/config.h.in 2012-08-15 13:46:35.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 161,166 ****
|
||||||
|
--- 161,167 ----
|
||||||
|
#undef HAVE_FSYNC
|
||||||
|
#undef HAVE_GETCWD
|
||||||
|
#undef HAVE_GETPSEUDOTTY
|
||||||
|
+ #undef HAVE_GETPWENT
|
||||||
|
#undef HAVE_GETPWNAM
|
||||||
|
#undef HAVE_GETPWUID
|
||||||
|
#undef HAVE_GETRLIMIT
|
||||||
|
*** ../vim-7.3.630/src/configure.in 2012-07-25 16:32:03.000000000 +0200
|
||||||
|
--- src/configure.in 2012-08-15 13:46:35.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 2994,3000 ****
|
||||||
|
dnl Check for functions in one big call, to reduce the size of configure.
|
||||||
|
dnl Can only be used for functions that do not require any include.
|
||||||
|
AC_CHECK_FUNCS(bcmp fchdir fchown fsync getcwd getpseudotty \
|
||||||
|
! getpwnam getpwuid getrlimit gettimeofday getwd lstat memcmp \
|
||||||
|
memset mkdtemp nanosleep opendir putenv qsort readlink select setenv \
|
||||||
|
setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \
|
||||||
|
sigvec strcasecmp strerror strftime stricmp strncasecmp \
|
||||||
|
--- 2994,3000 ----
|
||||||
|
dnl Check for functions in one big call, to reduce the size of configure.
|
||||||
|
dnl Can only be used for functions that do not require any include.
|
||||||
|
AC_CHECK_FUNCS(bcmp fchdir fchown fsync getcwd getpseudotty \
|
||||||
|
! getpwent getpwnam getpwuid getrlimit gettimeofday getwd lstat memcmp \
|
||||||
|
memset mkdtemp nanosleep opendir putenv qsort readlink select setenv \
|
||||||
|
setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \
|
||||||
|
sigvec strcasecmp strerror strftime stricmp strncasecmp \
|
||||||
|
*** ../vim-7.3.630/src/ex_docmd.c 2012-08-02 21:24:38.000000000 +0200
|
||||||
|
--- src/ex_docmd.c 2012-08-15 13:54:29.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 3515,3520 ****
|
||||||
|
--- 3515,3537 ----
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
+ #if defined(FEAT_CMDL_COMPL)
|
||||||
|
+ /* Check for user names */
|
||||||
|
+ if (*xp->xp_pattern == '~')
|
||||||
|
+ {
|
||||||
|
+ for (p = xp->xp_pattern + 1; *p != NUL && *p != '/'; ++p)
|
||||||
|
+ ;
|
||||||
|
+ /* Complete ~user only if it partially matches a user name.
|
||||||
|
+ * A full match ~user<Tab> will be replaced by user's home
|
||||||
|
+ * directory i.e. something like ~user<Tab> -> /home/user/ */
|
||||||
|
+ if (*p == NUL && p > xp->xp_pattern + 1
|
||||||
|
+ && match_user(xp->xp_pattern + 1) == 1)
|
||||||
|
+ {
|
||||||
|
+ xp->xp_context = EXPAND_USER;
|
||||||
|
+ ++xp->xp_pattern;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ #endif
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
***************
|
||||||
|
*** 5396,5401 ****
|
||||||
|
--- 5413,5419 ----
|
||||||
|
#endif
|
||||||
|
{EXPAND_TAGS, "tag"},
|
||||||
|
{EXPAND_TAGS_LISTFILES, "tag_listfiles"},
|
||||||
|
+ {EXPAND_USER, "user"},
|
||||||
|
{EXPAND_USER_VARS, "var"},
|
||||||
|
{0, NULL}
|
||||||
|
};
|
||||||
|
*** ../vim-7.3.630/src/ex_getln.c 2012-08-08 18:01:00.000000000 +0200
|
||||||
|
--- src/ex_getln.c 2012-08-15 13:46:35.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 4336,4341 ****
|
||||||
|
--- 4336,4342 ----
|
||||||
|
* EXPAND_EXPRESSION Complete internal or user defined function/variable
|
||||||
|
* names in expressions, eg :while s^I
|
||||||
|
* EXPAND_ENV_VARS Complete environment variable names
|
||||||
|
+ * EXPAND_USER Complete user names
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
set_expand_context(xp)
|
||||||
|
***************
|
||||||
|
*** 4681,4686 ****
|
||||||
|
--- 4682,4688 ----
|
||||||
|
{EXPAND_LOCALES, get_locales, TRUE, FALSE},
|
||||||
|
#endif
|
||||||
|
{EXPAND_ENV_VARS, get_env_name, TRUE, TRUE},
|
||||||
|
+ {EXPAND_USER, get_users, TRUE, FALSE},
|
||||||
|
};
|
||||||
|
int i;
|
||||||
|
|
||||||
|
*** ../vim-7.3.630/src/misc1.c 2012-08-08 18:01:00.000000000 +0200
|
||||||
|
--- src/misc1.c 2012-08-15 13:57:53.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 18,23 ****
|
||||||
|
--- 18,28 ----
|
||||||
|
static char_u *remove_tail __ARGS((char_u *p, char_u *pend, char_u *name));
|
||||||
|
static int copy_indent __ARGS((int size, char_u *src));
|
||||||
|
|
||||||
|
+ /* All user names (for ~user completion as done by shell). */
|
||||||
|
+ #if defined(FEAT_CMDL_COMPL) || defined(PROTO)
|
||||||
|
+ static garray_T ga_users;
|
||||||
|
+ #endif
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* Count the size (in window cells) of the indent in the current line.
|
||||||
|
*/
|
||||||
|
***************
|
||||||
|
*** 3782,3787 ****
|
||||||
|
--- 3787,3800 ----
|
||||||
|
{
|
||||||
|
vim_free(homedir);
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ # ifdef FEAT_CMDL_COMPL
|
||||||
|
+ void
|
||||||
|
+ free_users()
|
||||||
|
+ {
|
||||||
|
+ ga_clear_strings(&ga_users);
|
||||||
|
+ }
|
||||||
|
+ # endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
***************
|
||||||
|
*** 4451,4456 ****
|
||||||
|
--- 4464,4543 ----
|
||||||
|
return name;
|
||||||
|
# endif
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Find all user names for user completion.
|
||||||
|
+ * Done only once and then cached.
|
||||||
|
+ */
|
||||||
|
+ static void
|
||||||
|
+ init_users() {
|
||||||
|
+ static int lazy_init_done = FALSE;
|
||||||
|
+
|
||||||
|
+ if (lazy_init_done)
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
+ lazy_init_done = TRUE;
|
||||||
|
+ ga_init2(&ga_users, sizeof(char_u *), 20);
|
||||||
|
+
|
||||||
|
+ # if defined(HAVE_GETPWENT) && defined(HAVE_PWD_H)
|
||||||
|
+ {
|
||||||
|
+ char_u* user;
|
||||||
|
+ struct passwd* pw;
|
||||||
|
+
|
||||||
|
+ setpwent();
|
||||||
|
+ while ((pw = getpwent()) != NULL)
|
||||||
|
+ /* pw->pw_name shouldn't be NULL but just in case... */
|
||||||
|
+ if (pw->pw_name != NULL)
|
||||||
|
+ {
|
||||||
|
+ if (ga_grow(&ga_users, 1) == FAIL)
|
||||||
|
+ break;
|
||||||
|
+ user = vim_strsave((char_u*)pw->pw_name);
|
||||||
|
+ if (user == NULL)
|
||||||
|
+ break;
|
||||||
|
+ ((char_u **)(ga_users.ga_data))[ga_users.ga_len++] = user;
|
||||||
|
+ }
|
||||||
|
+ endpwent();
|
||||||
|
+ }
|
||||||
|
+ # endif
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Function given to ExpandGeneric() to obtain an user names.
|
||||||
|
+ */
|
||||||
|
+ char_u*
|
||||||
|
+ get_users(xp, idx)
|
||||||
|
+ expand_T *xp UNUSED;
|
||||||
|
+ int idx;
|
||||||
|
+ {
|
||||||
|
+ init_users();
|
||||||
|
+ if (idx < ga_users.ga_len)
|
||||||
|
+ return ((char_u **)ga_users.ga_data)[idx];
|
||||||
|
+ return NULL;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Check whether name matches a user name. Return:
|
||||||
|
+ * 0 if name does not match any user name.
|
||||||
|
+ * 1 if name partially matches the beginning of a user name.
|
||||||
|
+ * 2 is name fully matches a user name.
|
||||||
|
+ */
|
||||||
|
+ int match_user(name)
|
||||||
|
+ char_u* name;
|
||||||
|
+ {
|
||||||
|
+ int i;
|
||||||
|
+ int n = (int)STRLEN(name);
|
||||||
|
+ int result = 0;
|
||||||
|
+
|
||||||
|
+ init_users();
|
||||||
|
+ for (i = 0; i < ga_users.ga_len; i++)
|
||||||
|
+ {
|
||||||
|
+ if (STRCMP(((char_u **)ga_users.ga_data)[i], name) == 0)
|
||||||
|
+ return 2; /* full match */
|
||||||
|
+ if (STRNCMP(((char_u **)ga_users.ga_data)[i], name, n) == 0)
|
||||||
|
+ result = 1; /* partial match */
|
||||||
|
+ }
|
||||||
|
+ return result;
|
||||||
|
+ }
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
*** ../vim-7.3.630/src/misc2.c 2012-06-29 15:51:26.000000000 +0200
|
||||||
|
--- src/misc2.c 2012-08-15 13:46:35.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 1110,1115 ****
|
||||||
|
--- 1110,1118 ----
|
||||||
|
free_all_marks();
|
||||||
|
alist_clear(&global_alist);
|
||||||
|
free_homedir();
|
||||||
|
+ # if defined(FEAT_CMDL_COMPL)
|
||||||
|
+ free_users();
|
||||||
|
+ # endif
|
||||||
|
free_search_patterns();
|
||||||
|
free_old_sub();
|
||||||
|
free_last_insert();
|
||||||
|
*** ../vim-7.3.630/src/proto/misc1.pro 2012-06-06 16:12:54.000000000 +0200
|
||||||
|
--- src/proto/misc1.pro 2012-08-15 13:46:35.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 50,55 ****
|
||||||
|
--- 50,56 ----
|
||||||
|
void vim_beep __ARGS((void));
|
||||||
|
void init_homedir __ARGS((void));
|
||||||
|
void free_homedir __ARGS((void));
|
||||||
|
+ void free_users __ARGS((void));
|
||||||
|
char_u *expand_env_save __ARGS((char_u *src));
|
||||||
|
char_u *expand_env_save_opt __ARGS((char_u *src, int one));
|
||||||
|
void expand_env __ARGS((char_u *src, char_u *dst, int dstlen));
|
||||||
|
***************
|
||||||
|
*** 57,62 ****
|
||||||
|
--- 58,65 ----
|
||||||
|
char_u *vim_getenv __ARGS((char_u *name, int *mustfree));
|
||||||
|
void vim_setenv __ARGS((char_u *name, char_u *val));
|
||||||
|
char_u *get_env_name __ARGS((expand_T *xp, int idx));
|
||||||
|
+ char_u *get_users __ARGS((expand_T *xp, int idx));
|
||||||
|
+ int match_user __ARGS((char_u* name));
|
||||||
|
void home_replace __ARGS((buf_T *buf, char_u *src, char_u *dst, int dstlen, int one));
|
||||||
|
char_u *home_replace_save __ARGS((buf_T *buf, char_u *src));
|
||||||
|
int fullpathcmp __ARGS((char_u *s1, char_u *s2, int checkname));
|
||||||
|
*** ../vim-7.3.630/src/vim.h 2012-07-10 17:14:50.000000000 +0200
|
||||||
|
--- src/vim.h 2012-08-15 13:46:35.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 782,787 ****
|
||||||
|
--- 782,788 ----
|
||||||
|
#define EXPAND_OWNSYNTAX 39
|
||||||
|
#define EXPAND_LOCALES 40
|
||||||
|
#define EXPAND_HISTORY 41
|
||||||
|
+ #define EXPAND_USER 42
|
||||||
|
|
||||||
|
/* Values for exmode_active (0 is no exmode) */
|
||||||
|
#define EXMODE_NORMAL 1
|
||||||
|
*** ../vim-7.3.630/src/version.c 2012-08-15 13:30:55.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-15 14:01:12.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 716,717 ****
|
||||||
|
--- 716,719 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 631,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
"Marriage is the process of finding out what kind of man your wife
|
||||||
|
would have preferred"
|
||||||
|
|
||||||
|
/// 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 ///
|
537
7.3.632
Normal file
537
7.3.632
Normal file
@ -0,0 +1,537 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.632
|
||||||
|
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.632
|
||||||
|
Problem: Cannot select beyond 222 columns with the mouse in xterm.
|
||||||
|
Solution: Add support for SGR mouse tracking. (Hayaki Saito)
|
||||||
|
Files: runtime/doc/options.txt, src/feature.h, src/keymap.h, src/misc2.c,
|
||||||
|
src/option.h, src/os_unix.c, src/term.c, src/version.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.631/runtime/doc/options.txt 2012-07-10 16:49:08.000000000 +0200
|
||||||
|
--- runtime/doc/options.txt 2012-08-15 16:04:26.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 7383,7388 ****
|
||||||
|
--- 7424,7435 ----
|
||||||
|
jsbterm JSB term mouse handling.
|
||||||
|
*pterm-mouse*
|
||||||
|
pterm QNX pterm mouse handling.
|
||||||
|
+ *urxvt-mouse*
|
||||||
|
+ urxvt Mouse handling for the urxvt (rxvt-unicode) terminal.
|
||||||
|
+ *sgr-mouse*
|
||||||
|
+ sgr Mouse handling for the terminal that emits SGR-styled
|
||||||
|
+ mouse reporting. Works with xterm version 277 or
|
||||||
|
+ later.
|
||||||
|
|
||||||
|
The mouse handling must be enabled at compile time |+mouse_xterm|
|
||||||
|
|+mouse_dec| |+mouse_netterm|.
|
||||||
|
***************
|
||||||
|
*** 7395,7400 ****
|
||||||
|
--- 7442,7448 ----
|
||||||
|
or "xterm2" already. The main use of this option is to set it to
|
||||||
|
"xterm", when the terminal name doesn't start with "xterm", but it can
|
||||||
|
handle xterm mouse codes.
|
||||||
|
+ The "sgr" value will be set if the xterm version is 277 or later.
|
||||||
|
The "xterm2" value will be set if the xterm version is reported to be
|
||||||
|
95 or higher. This only works when compiled with the |+termresponse|
|
||||||
|
feature and if |t_RV| is set to the escape sequence to request the
|
||||||
|
*** ../vim-7.3.631/src/feature.h 2012-04-25 16:50:44.000000000 +0200
|
||||||
|
--- src/feature.h 2012-08-15 15:46:07.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 1056,1061 ****
|
||||||
|
--- 1056,1064 ----
|
||||||
|
# ifdef FEAT_BIG
|
||||||
|
# define FEAT_MOUSE_URXVT
|
||||||
|
# endif
|
||||||
|
+ # ifdef FEAT_BIG
|
||||||
|
+ # define FEAT_MOUSE_SGR
|
||||||
|
+ # endif
|
||||||
|
# if defined(FEAT_NORMAL) && (defined(MSDOS) || defined(WIN3264))
|
||||||
|
# define DOS_MOUSE
|
||||||
|
# endif
|
||||||
|
***************
|
||||||
|
*** 1077,1082 ****
|
||||||
|
--- 1080,1090 ----
|
||||||
|
# define FEAT_MOUSE_XTERM
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+ /* sgr is a small variation of mouse_xterm, and shares its code */
|
||||||
|
+ #if defined(FEAT_MOUSE_SGR) && !defined(FEAT_MOUSE_XTERM)
|
||||||
|
+ # define FEAT_MOUSE_XTERM
|
||||||
|
+ #endif
|
||||||
|
+
|
||||||
|
/* Define FEAT_MOUSE when any of the above is defined or FEAT_GUI. */
|
||||||
|
#if !defined(FEAT_MOUSE_TTY) \
|
||||||
|
&& (defined(FEAT_MOUSE_XTERM) \
|
||||||
|
***************
|
||||||
|
*** 1087,1093 ****
|
||||||
|
|| defined(FEAT_MOUSE_JSB) \
|
||||||
|
|| defined(FEAT_MOUSE_PTERM) \
|
||||||
|
|| defined(FEAT_SYSMOUSE) \
|
||||||
|
! || defined(FEAT_MOUSE_URXVT))
|
||||||
|
# define FEAT_MOUSE_TTY /* include non-GUI mouse support */
|
||||||
|
#endif
|
||||||
|
#if !defined(FEAT_MOUSE) && (defined(FEAT_MOUSE_TTY) || defined(FEAT_GUI))
|
||||||
|
--- 1095,1102 ----
|
||||||
|
|| defined(FEAT_MOUSE_JSB) \
|
||||||
|
|| defined(FEAT_MOUSE_PTERM) \
|
||||||
|
|| defined(FEAT_SYSMOUSE) \
|
||||||
|
! || defined(FEAT_MOUSE_URXVT) \
|
||||||
|
! || defined(FEAT_MOUSE_SGR))
|
||||||
|
# define FEAT_MOUSE_TTY /* include non-GUI mouse support */
|
||||||
|
#endif
|
||||||
|
#if !defined(FEAT_MOUSE) && (defined(FEAT_MOUSE_TTY) || defined(FEAT_GUI))
|
||||||
|
*** ../vim-7.3.631/src/keymap.h 2012-01-20 17:15:47.000000000 +0100
|
||||||
|
--- src/keymap.h 2012-08-15 15:46:07.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 110,115 ****
|
||||||
|
--- 110,118 ----
|
||||||
|
/* Used for the urxvt mouse. */
|
||||||
|
#define KS_URXVT_MOUSE 238
|
||||||
|
|
||||||
|
+ /* Used for the sgr mouse. */
|
||||||
|
+ #define KS_SGR_MOUSE 237
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* Filler used after KS_SPECIAL and others
|
||||||
|
*/
|
||||||
|
***************
|
||||||
|
*** 412,417 ****
|
||||||
|
--- 415,421 ----
|
||||||
|
#define K_JSBTERM_MOUSE TERMCAP2KEY(KS_JSBTERM_MOUSE, KE_FILLER)
|
||||||
|
#define K_PTERM_MOUSE TERMCAP2KEY(KS_PTERM_MOUSE, KE_FILLER)
|
||||||
|
#define K_URXVT_MOUSE TERMCAP2KEY(KS_URXVT_MOUSE, KE_FILLER)
|
||||||
|
+ #define K_SGR_MOUSE TERMCAP2KEY(KS_SGR_MOUSE, KE_FILLER)
|
||||||
|
|
||||||
|
#define K_SELECT TERMCAP2KEY(KS_SELECT, KE_FILLER)
|
||||||
|
#define K_TEAROFF TERMCAP2KEY(KS_TEAROFF, KE_FILLER)
|
||||||
|
*** ../vim-7.3.631/src/misc2.c 2012-08-15 14:04:50.000000000 +0200
|
||||||
|
--- src/misc2.c 2012-08-15 15:46:07.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 2433,2438 ****
|
||||||
|
--- 2433,2441 ----
|
||||||
|
#ifdef FEAT_MOUSE_URXVT
|
||||||
|
{K_URXVT_MOUSE, (char_u *)"UrxvtMouse"},
|
||||||
|
#endif
|
||||||
|
+ #ifdef FEAT_MOUSE_SGR
|
||||||
|
+ {K_SGR_MOUSE, (char_u *)"SgrMouse"},
|
||||||
|
+ #endif
|
||||||
|
{K_LEFTMOUSE, (char_u *)"LeftMouse"},
|
||||||
|
{K_LEFTMOUSE_NM, (char_u *)"LeftMouseNM"},
|
||||||
|
{K_LEFTDRAG, (char_u *)"LeftDrag"},
|
||||||
|
*** ../vim-7.3.631/src/option.h 2012-07-10 16:49:08.000000000 +0200
|
||||||
|
--- src/option.h 2012-08-15 15:46:07.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 822,828 ****
|
||||||
|
EXTERN char_u *p_ttym; /* 'ttymouse' */
|
||||||
|
EXTERN unsigned ttym_flags;
|
||||||
|
# ifdef IN_OPTION_C
|
||||||
|
! static char *(p_ttym_values[]) = {"xterm", "xterm2", "dec", "netterm", "jsbterm", "pterm", "urxvt", NULL};
|
||||||
|
# endif
|
||||||
|
# define TTYM_XTERM 0x01
|
||||||
|
# define TTYM_XTERM2 0x02
|
||||||
|
--- 822,828 ----
|
||||||
|
EXTERN char_u *p_ttym; /* 'ttymouse' */
|
||||||
|
EXTERN unsigned ttym_flags;
|
||||||
|
# ifdef IN_OPTION_C
|
||||||
|
! static char *(p_ttym_values[]) = {"xterm", "xterm2", "dec", "netterm", "jsbterm", "pterm", "urxvt", "sgr", NULL};
|
||||||
|
# endif
|
||||||
|
# define TTYM_XTERM 0x01
|
||||||
|
# define TTYM_XTERM2 0x02
|
||||||
|
***************
|
||||||
|
*** 831,836 ****
|
||||||
|
--- 831,837 ----
|
||||||
|
# define TTYM_JSBTERM 0x10
|
||||||
|
# define TTYM_PTERM 0x20
|
||||||
|
# define TTYM_URXVT 0x40
|
||||||
|
+ # define TTYM_SGR 0x80
|
||||||
|
#endif
|
||||||
|
EXTERN char_u *p_udir; /* 'undodir' */
|
||||||
|
EXTERN long p_ul; /* 'undolevels' */
|
||||||
|
*** ../vim-7.3.631/src/os_unix.c 2012-04-20 15:55:10.000000000 +0200
|
||||||
|
--- src/os_unix.c 2012-08-15 16:06:54.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 2159,2168 ****
|
||||||
|
--- 2159,2171 ----
|
||||||
|
* Return 1 for "xterm".
|
||||||
|
* Return 2 for "xterm2".
|
||||||
|
* Return 3 for "urxvt".
|
||||||
|
+ * Return 4 for "sgr".
|
||||||
|
*/
|
||||||
|
int
|
||||||
|
use_xterm_mouse()
|
||||||
|
{
|
||||||
|
+ if (ttym_flags == TTYM_SGR)
|
||||||
|
+ return 4;
|
||||||
|
if (ttym_flags == TTYM_URXVT)
|
||||||
|
return 3;
|
||||||
|
if (ttym_flags == TTYM_XTERM2)
|
||||||
|
***************
|
||||||
|
*** 3339,3345 ****
|
||||||
|
xterm_mouse_vers = use_xterm_mouse();
|
||||||
|
|
||||||
|
# ifdef FEAT_MOUSE_URXVT
|
||||||
|
! if (ttym_flags == TTYM_URXVT) {
|
||||||
|
out_str_nf((char_u *)
|
||||||
|
(on
|
||||||
|
? IF_EB("\033[?1015h", ESC_STR "[?1015h")
|
||||||
|
--- 3342,3349 ----
|
||||||
|
xterm_mouse_vers = use_xterm_mouse();
|
||||||
|
|
||||||
|
# ifdef FEAT_MOUSE_URXVT
|
||||||
|
! if (ttym_flags == TTYM_URXVT)
|
||||||
|
! {
|
||||||
|
out_str_nf((char_u *)
|
||||||
|
(on
|
||||||
|
? IF_EB("\033[?1015h", ESC_STR "[?1015h")
|
||||||
|
***************
|
||||||
|
*** 3348,3353 ****
|
||||||
|
--- 3352,3368 ----
|
||||||
|
}
|
||||||
|
# endif
|
||||||
|
|
||||||
|
+ # ifdef FEAT_MOUSE_SGR
|
||||||
|
+ if (ttym_flags == TTYM_SGR)
|
||||||
|
+ {
|
||||||
|
+ out_str_nf((char_u *)
|
||||||
|
+ (on
|
||||||
|
+ ? IF_EB("\033[?1006h", ESC_STR "[?1006h")
|
||||||
|
+ : IF_EB("\033[?1006l", ESC_STR "[?1006l")));
|
||||||
|
+ ison = on;
|
||||||
|
+ }
|
||||||
|
+ # endif
|
||||||
|
+
|
||||||
|
if (xterm_mouse_vers > 0)
|
||||||
|
{
|
||||||
|
if (on) /* enable mouse events, use mouse tracking if available */
|
||||||
|
***************
|
||||||
|
*** 3577,3582 ****
|
||||||
|
--- 3592,3618 ----
|
||||||
|
else
|
||||||
|
del_mouse_termcode(KS_URXVT_MOUSE);
|
||||||
|
# endif
|
||||||
|
+ # ifdef FEAT_MOUSE_SGR
|
||||||
|
+ /* same as the dec mouse */
|
||||||
|
+ if (use_xterm_mouse() == 4
|
||||||
|
+ # ifdef FEAT_GUI
|
||||||
|
+ && !gui.in_use
|
||||||
|
+ # endif
|
||||||
|
+ )
|
||||||
|
+ {
|
||||||
|
+ set_mouse_termcode(KS_SGR_MOUSE, (char_u *)(term_is_8bit(T_NAME)
|
||||||
|
+ ? IF_EB("\233<", CSI_STR "<")
|
||||||
|
+ : IF_EB("\033[<", ESC_STR "[<")));
|
||||||
|
+
|
||||||
|
+ if (*p_mouse != NUL)
|
||||||
|
+ {
|
||||||
|
+ mch_setmouse(FALSE);
|
||||||
|
+ setmouse();
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ del_mouse_termcode(KS_SGR_MOUSE);
|
||||||
|
+ # endif
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
*** ../vim-7.3.631/src/term.c 2012-02-05 22:05:44.000000000 +0100
|
||||||
|
--- src/term.c 2012-08-15 16:14:09.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 1997,2002 ****
|
||||||
|
--- 1997,2003 ----
|
||||||
|
# define HMT_JSBTERM 8
|
||||||
|
# define HMT_PTERM 16
|
||||||
|
# define HMT_URXVT 32
|
||||||
|
+ # define HMT_SGR 64
|
||||||
|
static int has_mouse_termcode = 0;
|
||||||
|
# endif
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 2037,2042 ****
|
||||||
|
--- 2038,2048 ----
|
||||||
|
has_mouse_termcode |= HMT_URXVT;
|
||||||
|
else
|
||||||
|
# endif
|
||||||
|
+ # ifdef FEAT_MOUSE_SGR
|
||||||
|
+ if (n == KS_SGR_MOUSE)
|
||||||
|
+ has_mouse_termcode |= HMT_SGR;
|
||||||
|
+ else
|
||||||
|
+ # endif
|
||||||
|
has_mouse_termcode |= HMT_NORMAL;
|
||||||
|
# endif
|
||||||
|
}
|
||||||
|
***************
|
||||||
|
*** 2079,2084 ****
|
||||||
|
--- 2085,2095 ----
|
||||||
|
has_mouse_termcode &= ~HMT_URXVT;
|
||||||
|
else
|
||||||
|
# endif
|
||||||
|
+ # ifdef FEAT_MOUSE_SGR
|
||||||
|
+ if (n == KS_SGR_MOUSE)
|
||||||
|
+ has_mouse_termcode &= ~HMT_SGR;
|
||||||
|
+ else
|
||||||
|
+ # endif
|
||||||
|
has_mouse_termcode &= ~HMT_NORMAL;
|
||||||
|
# endif
|
||||||
|
}
|
||||||
|
***************
|
||||||
|
*** 4023,4029 ****
|
||||||
|
#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
|
||||||
|
--- 4034,4041 ----
|
||||||
|
#ifdef FEAT_TERMRESPONSE
|
||||||
|
if (key_name[0] == NUL
|
||||||
|
/* URXVT mouse uses <ESC>[#;#;#M, but we are matching <ESC>[ */
|
||||||
|
! || key_name[0] == KS_URXVT_MOUSE
|
||||||
|
! || key_name[0] == KS_SGR_MOUSE)
|
||||||
|
{
|
||||||
|
/* Check for xterm version string: "<Esc>[>{x};{vers};{y}c". Also
|
||||||
|
* eat other possible responses to t_RV, rxvt returns
|
||||||
|
***************
|
||||||
|
*** 4061,4066 ****
|
||||||
|
--- 4073,4088 ----
|
||||||
|
|
||||||
|
if (tp[1 + (tp[0] != CSI)] == '>' && j == 2)
|
||||||
|
{
|
||||||
|
+ # ifdef TTYM_SGR
|
||||||
|
+ if (extra >= 277
|
||||||
|
+ # ifdef TTYM_URXVT
|
||||||
|
+ && ttym_flags != TTYM_URXVT
|
||||||
|
+ # endif
|
||||||
|
+ )
|
||||||
|
+ set_option_value((char_u *)"ttym", 0L,
|
||||||
|
+ (char_u *)"sgr", 0);
|
||||||
|
+ else
|
||||||
|
+ # endif
|
||||||
|
/* if xterm version >= 95 use mouse dragging */
|
||||||
|
if (extra >= 95
|
||||||
|
# ifdef TTYM_URXVT
|
||||||
|
***************
|
||||||
|
*** 4147,4167 ****
|
||||||
|
/*
|
||||||
|
* If it is a mouse click, get the coordinates.
|
||||||
|
*/
|
||||||
|
! if (key_name[0] == (int)KS_MOUSE
|
||||||
|
# ifdef FEAT_MOUSE_JSB
|
||||||
|
! || key_name[0] == (int)KS_JSBTERM_MOUSE
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_NET
|
||||||
|
! || key_name[0] == (int)KS_NETTERM_MOUSE
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_DEC
|
||||||
|
! || key_name[0] == (int)KS_DEC_MOUSE
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_PTERM
|
||||||
|
! || key_name[0] == (int)KS_PTERM_MOUSE
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_URXVT
|
||||||
|
! || key_name[0] == (int)KS_URXVT_MOUSE
|
||||||
|
# endif
|
||||||
|
)
|
||||||
|
{
|
||||||
|
--- 4169,4192 ----
|
||||||
|
/*
|
||||||
|
* If it is a mouse click, get the coordinates.
|
||||||
|
*/
|
||||||
|
! if (key_name[0] == KS_MOUSE
|
||||||
|
# ifdef FEAT_MOUSE_JSB
|
||||||
|
! || key_name[0] == KS_JSBTERM_MOUSE
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_NET
|
||||||
|
! || key_name[0] == KS_NETTERM_MOUSE
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_DEC
|
||||||
|
! || key_name[0] == KS_DEC_MOUSE
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_PTERM
|
||||||
|
! || key_name[0] == KS_PTERM_MOUSE
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_URXVT
|
||||||
|
! || key_name[0] == KS_URXVT_MOUSE
|
||||||
|
! # endif
|
||||||
|
! # ifdef FEAT_MOUSE_SGR
|
||||||
|
! || key_name[0] == KS_SGR_MOUSE
|
||||||
|
# endif
|
||||||
|
)
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 4243,4250 ****
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
! # ifdef FEAT_MOUSE_URXVT
|
||||||
|
! if (key_name[0] == (int)KS_URXVT_MOUSE)
|
||||||
|
{
|
||||||
|
for (;;)
|
||||||
|
{
|
||||||
|
--- 4268,4276 ----
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
! # if defined(FEAT_MOUSE_URXVT) || defined(FEAT_MOUSE_SGR)
|
||||||
|
! if (key_name[0] == KS_URXVT_MOUSE
|
||||||
|
! || key_name[0] == KS_SGR_MOUSE)
|
||||||
|
{
|
||||||
|
for (;;)
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 4256,4261 ****
|
||||||
|
--- 4282,4301 ----
|
||||||
|
* ^-- row
|
||||||
|
* ^----- column
|
||||||
|
* ^-------- code
|
||||||
|
+ *
|
||||||
|
+ * SGR 1006 mouse reporting mode:
|
||||||
|
+ * Almost identical to xterm mouse mode, except the values
|
||||||
|
+ * are decimal instead of bytes.
|
||||||
|
+ *
|
||||||
|
+ * \033[<%d;%d;%dM
|
||||||
|
+ * ^-- row
|
||||||
|
+ * ^----- column
|
||||||
|
+ * ^-------- code
|
||||||
|
+ *
|
||||||
|
+ * \033[<%d;%d;%dm : mouse release event
|
||||||
|
+ * ^-- row
|
||||||
|
+ * ^----- column
|
||||||
|
+ * ^-------- code
|
||||||
|
*/
|
||||||
|
p = tp + slen;
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 4263,4294 ****
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
--- 4303,4348 ----
|
||||||
|
if (*p++ != ';')
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
+ /* when mouse reporting is SGR, add 32 to mouse code */
|
||||||
|
+ if (key_name[0] == KS_SGR_MOUSE)
|
||||||
|
+ mouse_code += 32;
|
||||||
|
+
|
||||||
|
mouse_col = getdigits(&p) - 1;
|
||||||
|
if (*p++ != ';')
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
mouse_row = getdigits(&p) - 1;
|
||||||
|
! if (key_name[0] == KS_SGR_MOUSE && *p == 'm')
|
||||||
|
! mouse_code |= MOUSE_RELEASE;
|
||||||
|
! else if (*p != 'M')
|
||||||
|
return -1;
|
||||||
|
+ p++;
|
||||||
|
|
||||||
|
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)
|
||||||
|
! {
|
||||||
|
int slen2;
|
||||||
|
int cmd_complete = 0;
|
||||||
|
!
|
||||||
|
! /* check if the command is complete by looking for the
|
||||||
|
! * 'M' */
|
||||||
|
! for (slen2 = slen; slen2 < len; slen2++)
|
||||||
|
! {
|
||||||
|
! if (tp[slen2] == 'M'
|
||||||
|
! || (key_name[0] == KS_SGR_MOUSE
|
||||||
|
! && tp[slen2] == 'm'))
|
||||||
|
! {
|
||||||
|
cmd_complete = 1;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
p += j;
|
||||||
|
! if (cmd_complete && getdigits(&p) == mouse_code)
|
||||||
|
! {
|
||||||
|
slen += j; /* skip the \033[ */
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
***************
|
||||||
|
*** 4302,4307 ****
|
||||||
|
--- 4356,4364 ----
|
||||||
|
#ifdef FEAT_MOUSE_URXVT
|
||||||
|
|| key_name[0] == (int)KS_URXVT_MOUSE
|
||||||
|
#endif
|
||||||
|
+ #ifdef FEAT_MOUSE_SGR
|
||||||
|
+ || key_name[0] == KS_SGR_MOUSE
|
||||||
|
+ #endif
|
||||||
|
)
|
||||||
|
{
|
||||||
|
# if !defined(MSWIN) && !defined(MSDOS)
|
||||||
|
*** ../vim-7.3.631/src/version.c 2012-08-15 14:04:50.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-15 15:47:30.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 384,389 ****
|
||||||
|
--- 384,394 ----
|
||||||
|
# else
|
||||||
|
"-mouse_urxvt",
|
||||||
|
# endif
|
||||||
|
+ # ifdef FEAT_MOUSE_SGR
|
||||||
|
+ "+mouse_sgr",
|
||||||
|
+ # else
|
||||||
|
+ "-mouse_sgr",
|
||||||
|
+ # endif
|
||||||
|
#endif
|
||||||
|
#ifdef __QNX__
|
||||||
|
# ifdef FEAT_MOUSE_PTERM
|
||||||
|
*** ../vim-7.3.631/src/version.c 2012-08-15 14:04:50.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-15 15:47:30.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 716,717 ****
|
||||||
|
--- 721,724 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 632,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
243. You unsuccessfully try to download a pizza from www.dominos.com.
|
||||||
|
|
||||||
|
/// 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 ///
|
81
7.3.633
Normal file
81
7.3.633
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.633
|
||||||
|
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.633
|
||||||
|
Problem: Selection remains displayed as selected after selecting another
|
||||||
|
text.
|
||||||
|
Solution: Call xterm_update() before select(). (Andrew Pimlott)
|
||||||
|
Files: src/os_unix.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.632/src/os_unix.c 2012-08-15 16:20:59.000000000 +0200
|
||||||
|
--- src/os_unix.c 2012-08-15 17:15:58.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 5196,5201 ****
|
||||||
|
--- 5196,5205 ----
|
||||||
|
FD_SET(ConnectionNumber(xterm_dpy), &rfds);
|
||||||
|
if (maxfd < ConnectionNumber(xterm_dpy))
|
||||||
|
maxfd = ConnectionNumber(xterm_dpy);
|
||||||
|
+
|
||||||
|
+ /* An event may have already been read but not handled. In
|
||||||
|
+ * particulary, XFlush may cause this. */
|
||||||
|
+ xterm_update();
|
||||||
|
}
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_GPM
|
||||||
|
***************
|
||||||
|
*** 5216,5229 ****
|
||||||
|
maxfd = xsmp_icefd;
|
||||||
|
}
|
||||||
|
# endif
|
||||||
|
! #ifdef FEAT_NETBEANS_INTG
|
||||||
|
if (nb_fd != -1)
|
||||||
|
{
|
||||||
|
FD_SET(nb_fd, &rfds);
|
||||||
|
if (maxfd < nb_fd)
|
||||||
|
maxfd = nb_fd;
|
||||||
|
}
|
||||||
|
! #endif
|
||||||
|
|
||||||
|
# ifdef OLD_VMS
|
||||||
|
/* Old VMS as v6.2 and older have broken select(). It waits more than
|
||||||
|
--- 5220,5233 ----
|
||||||
|
maxfd = xsmp_icefd;
|
||||||
|
}
|
||||||
|
# endif
|
||||||
|
! # ifdef FEAT_NETBEANS_INTG
|
||||||
|
if (nb_fd != -1)
|
||||||
|
{
|
||||||
|
FD_SET(nb_fd, &rfds);
|
||||||
|
if (maxfd < nb_fd)
|
||||||
|
maxfd = nb_fd;
|
||||||
|
}
|
||||||
|
! # endif
|
||||||
|
|
||||||
|
# ifdef OLD_VMS
|
||||||
|
/* Old VMS as v6.2 and older have broken select(). It waits more than
|
||||||
|
*** ../vim-7.3.632/src/version.c 2012-08-15 16:20:59.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-15 17:22:17.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 721,722 ****
|
||||||
|
--- 721,724 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 633,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
245. You use Real Audio to listen to a radio station from a distant
|
||||||
|
city rather than turn on your stereo system.
|
||||||
|
|
||||||
|
/// 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 ///
|
57
7.3.634
Normal file
57
7.3.634
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.634
|
||||||
|
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.634
|
||||||
|
Problem: Month/Day format for undo is confusing. (Marcin Szamotulski)
|
||||||
|
Solution: Always use Year/Month/Day, should work for everybody.
|
||||||
|
Files: src/undo.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.633/src/undo.c 2012-06-01 13:46:06.000000000 +0200
|
||||||
|
--- src/undo.c 2012-08-23 12:43:24.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 2880,2890 ****
|
||||||
|
if (time(NULL) - tt < (60L * 60L * 12L))
|
||||||
|
/* within 12 hours */
|
||||||
|
(void)strftime((char *)buf, buflen, "%H:%M:%S", curtime);
|
||||||
|
- else if (time(NULL) - tt < (60L * 60L * 24L * 180L))
|
||||||
|
- /* within 6 months */
|
||||||
|
- (void)strftime((char *)buf, buflen, "%m/%d %H:%M:%S", curtime);
|
||||||
|
else
|
||||||
|
! /* long ago */
|
||||||
|
(void)strftime((char *)buf, buflen, "%Y/%m/%d %H:%M:%S", curtime);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
--- 2880,2887 ----
|
||||||
|
if (time(NULL) - tt < (60L * 60L * 12L))
|
||||||
|
/* within 12 hours */
|
||||||
|
(void)strftime((char *)buf, buflen, "%H:%M:%S", curtime);
|
||||||
|
else
|
||||||
|
! /* longer ago */
|
||||||
|
(void)strftime((char *)buf, buflen, "%Y/%m/%d %H:%M:%S", curtime);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
*** ../vim-7.3.633/src/version.c 2012-08-15 17:26:53.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-23 12:58:36.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 721,722 ****
|
||||||
|
--- 721,724 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 634,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
10E. You start counting in hex.
|
||||||
|
|
||||||
|
/// 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 ///
|
50
7.3.635
Normal file
50
7.3.635
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.635
|
||||||
|
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.635
|
||||||
|
Problem: Issue 21: System call during startup sets 'lines' to a wrong
|
||||||
|
value. (Karl Yngve)
|
||||||
|
Solution: Don't set the shell size while the GUI is still starting up.
|
||||||
|
(Christian Brabandt)
|
||||||
|
Files: src/ui.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.634/src/ui.c 2012-07-10 16:49:08.000000000 +0200
|
||||||
|
--- src/ui.c 2012-08-23 13:25:26.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 298,303 ****
|
||||||
|
--- 298,306 ----
|
||||||
|
int retval;
|
||||||
|
|
||||||
|
#ifdef FEAT_GUI
|
||||||
|
+ if (gui.starting)
|
||||||
|
+ /* possibly a system call during startup, check later */
|
||||||
|
+ return OK;
|
||||||
|
if (gui.in_use)
|
||||||
|
retval = gui_get_shellsize();
|
||||||
|
else
|
||||||
|
*** ../vim-7.3.634/src/version.c 2012-08-23 12:58:56.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-23 13:27:00.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 721,722 ****
|
||||||
|
--- 721,724 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 635,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
ARTHUR: This new learning amazes me, Sir Bedevere. Explain again how sheep's
|
||||||
|
bladders may be employed to prevent earthquakes.
|
||||||
|
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
|
||||||
|
|
||||||
|
/// 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 ///
|
148
7.3.636
Normal file
148
7.3.636
Normal file
@ -0,0 +1,148 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.636
|
||||||
|
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.636 (after 7.3.625)
|
||||||
|
Problem: Not all zero-width matches handled correctly for "gn".
|
||||||
|
Solution: Move zero-width detection to a separate function. (Christian
|
||||||
|
Brabandt)
|
||||||
|
Files: src/search.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.635/src/search.c 2012-08-08 15:27:54.000000000 +0200
|
||||||
|
--- src/search.c 2012-08-23 15:52:50.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 4526,4531 ****
|
||||||
|
--- 4526,4533 ----
|
||||||
|
#endif /* FEAT_TEXTOBJ */
|
||||||
|
|
||||||
|
#if defined(FEAT_VISUAL) || defined(PROTO)
|
||||||
|
+ static int is_zerowidth __ARGS((char_u *pattern));
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* Find next search match under cursor, cursor at end.
|
||||||
|
* Used while an operator is pending, and in Visual mode.
|
||||||
|
***************
|
||||||
|
*** 4546,4556 ****
|
||||||
|
int visual_active = FALSE;
|
||||||
|
int flags = 0;
|
||||||
|
pos_T save_VIsual;
|
||||||
|
- regmmatch_T regmatch;
|
||||||
|
- int nmatched = 0;
|
||||||
|
int zerowidth = FALSE;
|
||||||
|
|
||||||
|
-
|
||||||
|
/* wrapping should not occur */
|
||||||
|
p_ws = FALSE;
|
||||||
|
|
||||||
|
--- 4548,4555 ----
|
||||||
|
***************
|
||||||
|
*** 4583,4606 ****
|
||||||
|
else
|
||||||
|
orig_pos = pos = start_pos = curwin->w_cursor;
|
||||||
|
|
||||||
|
! /*
|
||||||
|
! * Check for zero-width pattern.
|
||||||
|
! */
|
||||||
|
! if (search_regcomp(spats[last_idx].pat, RE_SEARCH, RE_SEARCH,
|
||||||
|
! ((SEARCH_HIS + SEARCH_KEEP)), ®match) == FAIL)
|
||||||
|
return FAIL;
|
||||||
|
|
||||||
|
- /* Zero-width pattern should match somewhere, then we can check if start
|
||||||
|
- * and end are in the same position. */
|
||||||
|
- nmatched = vim_regexec_multi(®match, curwin, curbuf,
|
||||||
|
- curwin->w_cursor.lnum, (colnr_T)0, NULL);
|
||||||
|
- if (called_emsg)
|
||||||
|
- return FAIL;
|
||||||
|
- if (nmatched && regmatch.startpos[0].lnum == regmatch.endpos[0].lnum
|
||||||
|
- && regmatch.endpos[0].col == regmatch.startpos[0].col)
|
||||||
|
- zerowidth = TRUE;
|
||||||
|
- vim_free(regmatch.regprog);
|
||||||
|
-
|
||||||
|
/*
|
||||||
|
* The trick is to first search backwards and then search forward again,
|
||||||
|
* so that a match at the current cursor position will be correctly
|
||||||
|
--- 4582,4592 ----
|
||||||
|
else
|
||||||
|
orig_pos = pos = start_pos = curwin->w_cursor;
|
||||||
|
|
||||||
|
! /* Is the pattern is zero-width? */
|
||||||
|
! zerowidth = is_zerowidth(spats[last_idx].pat);
|
||||||
|
! if (zerowidth == -1)
|
||||||
|
return FAIL;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The trick is to first search backwards and then search forward again,
|
||||||
|
* so that a match at the current cursor position will be correctly
|
||||||
|
***************
|
||||||
|
*** 4693,4698 ****
|
||||||
|
--- 4679,4721 ----
|
||||||
|
|
||||||
|
return OK;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Check if the pattern is zero-width.
|
||||||
|
+ * Returns TRUE, FALSE or -1 for failure.
|
||||||
|
+ */
|
||||||
|
+ static int
|
||||||
|
+ is_zerowidth(pattern)
|
||||||
|
+ char_u *pattern;
|
||||||
|
+ {
|
||||||
|
+ regmmatch_T regmatch;
|
||||||
|
+ int nmatched = 0;
|
||||||
|
+ int result = -1;
|
||||||
|
+ pos_T pos;
|
||||||
|
+
|
||||||
|
+ if (search_regcomp(pattern, RE_SEARCH, RE_SEARCH,
|
||||||
|
+ SEARCH_KEEP, ®match) == FAIL)
|
||||||
|
+ return -1;
|
||||||
|
+
|
||||||
|
+ /* move to match */
|
||||||
|
+ clearpos(&pos);
|
||||||
|
+ if (searchit(curwin, curbuf, &pos, FORWARD, spats[last_idx].pat, 1,
|
||||||
|
+ SEARCH_KEEP, RE_SEARCH, 0, NULL) != FAIL)
|
||||||
|
+ {
|
||||||
|
+ /* Zero-width pattern should match somewhere, then we can check if
|
||||||
|
+ * start and end are in the same position. */
|
||||||
|
+ nmatched = vim_regexec_multi(®match, curwin, curbuf,
|
||||||
|
+ pos.lnum, (colnr_T)0, NULL);
|
||||||
|
+
|
||||||
|
+ if (!called_emsg)
|
||||||
|
+ result = (nmatched != 0
|
||||||
|
+ && regmatch.startpos[0].lnum == regmatch.endpos[0].lnum
|
||||||
|
+ && regmatch.startpos[0].col == regmatch.endpos[0].col);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ vim_free(regmatch.regprog);
|
||||||
|
+ return result;
|
||||||
|
+ }
|
||||||
|
#endif /* FEAT_VISUAL */
|
||||||
|
|
||||||
|
#if defined(FEAT_LISP) || defined(FEAT_CINDENT) || defined(FEAT_TEXTOBJ) \
|
||||||
|
*** ../vim-7.3.635/src/version.c 2012-08-23 13:28:50.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-23 15:25:23.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 721,722 ****
|
||||||
|
--- 721,724 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 636,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Edison's greatest achievement came in 1879, when he invented the
|
||||||
|
electric company. Edison's design was a brilliant adaptation of the
|
||||||
|
simple electrical circuit: the electric company sends electricity
|
||||||
|
through a wire to a customer, then immediately gets the electricity
|
||||||
|
back through another wire
|
||||||
|
|
||||||
|
/// 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 ///
|
94
7.3.637
Normal file
94
7.3.637
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.637
|
||||||
|
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.637
|
||||||
|
Problem: Cannot catch the error caused by a foldopen when there is no fold.
|
||||||
|
(ZyX, Issue 48)
|
||||||
|
Solution: Do not break out of the loop early when inside try/catch.
|
||||||
|
(Christian Brabandt) Except when there is a syntax error.
|
||||||
|
Files: src/ex_docmd.c, src/globals.h
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.636/src/ex_docmd.c 2012-08-15 14:04:50.000000000 +0200
|
||||||
|
--- src/ex_docmd.c 2012-08-23 18:39:08.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 1295,1301 ****
|
||||||
|
&& cstack.cs_trylevel == 0
|
||||||
|
#endif
|
||||||
|
)
|
||||||
|
! && !(did_emsg && used_getline
|
||||||
|
&& (getline_equal(fgetline, cookie, getexmodeline)
|
||||||
|
|| getline_equal(fgetline, cookie, getexline)))
|
||||||
|
&& (next_cmdline != NULL
|
||||||
|
--- 1295,1308 ----
|
||||||
|
&& cstack.cs_trylevel == 0
|
||||||
|
#endif
|
||||||
|
)
|
||||||
|
! && !(did_emsg
|
||||||
|
! #ifdef FEAT_EVAL
|
||||||
|
! /* Keep going when inside try/catch, so that the error can be
|
||||||
|
! * dealth with, except when it is a syntax error, it may cause
|
||||||
|
! * the :endtry to be missed. */
|
||||||
|
! && (cstack.cs_trylevel == 0 || did_emsg_syntax)
|
||||||
|
! #endif
|
||||||
|
! && used_getline
|
||||||
|
&& (getline_equal(fgetline, cookie, getexmodeline)
|
||||||
|
|| getline_equal(fgetline, cookie, getexline)))
|
||||||
|
&& (next_cmdline != NULL
|
||||||
|
***************
|
||||||
|
*** 1305,1310 ****
|
||||||
|
--- 1312,1318 ----
|
||||||
|
|| (flags & DOCMD_REPEAT)));
|
||||||
|
|
||||||
|
vim_free(cmdline_copy);
|
||||||
|
+ did_emsg_syntax = FALSE;
|
||||||
|
#ifdef FEAT_EVAL
|
||||||
|
free_cmdlines(&lines_ga);
|
||||||
|
ga_clear(&lines_ga);
|
||||||
|
***************
|
||||||
|
*** 2137,2142 ****
|
||||||
|
--- 2145,2151 ----
|
||||||
|
if (!sourcing)
|
||||||
|
append_command(*cmdlinep);
|
||||||
|
errormsg = IObuff;
|
||||||
|
+ did_emsg_syntax = TRUE;
|
||||||
|
}
|
||||||
|
goto doend;
|
||||||
|
}
|
||||||
|
*** ../vim-7.3.636/src/globals.h 2012-07-10 16:49:08.000000000 +0200
|
||||||
|
--- src/globals.h 2012-08-23 18:29:09.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 183,188 ****
|
||||||
|
--- 183,190 ----
|
||||||
|
#endif
|
||||||
|
EXTERN int did_emsg; /* set by emsg() when the message
|
||||||
|
is displayed or thrown */
|
||||||
|
+ EXTERN int did_emsg_syntax; /* did_emsg set because of a
|
||||||
|
+ syntax error */
|
||||||
|
EXTERN int called_emsg; /* always set by emsg() */
|
||||||
|
EXTERN int ex_exitval INIT(= 0); /* exit value for ex mode */
|
||||||
|
EXTERN int emsg_on_display INIT(= FALSE); /* there is an error message */
|
||||||
|
*** ../vim-7.3.636/src/version.c 2012-08-23 15:53:00.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-23 17:59:12.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 721,722 ****
|
||||||
|
--- 721,724 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 637,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
GOD: That is your purpose Arthur ... the Quest for the Holy Grail ...
|
||||||
|
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
|
||||||
|
|
||||||
|
/// 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 ///
|
55
7.3.638
Normal file
55
7.3.638
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.3.638
|
||||||
|
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.638
|
||||||
|
Problem: Unecessary redraw of the previous character.
|
||||||
|
Solution: Check if the character is double-width. (Jon Long)
|
||||||
|
Files: src/screen.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.3.637/src/screen.c 2012-07-10 16:49:08.000000000 +0200
|
||||||
|
--- src/screen.c 2012-08-23 18:49:33.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 5332,5339 ****
|
||||||
|
&& (ScreenLinesUC[off_from] != ScreenLinesUC[off_to]
|
||||||
|
|| (ScreenLinesUC[off_from] != 0
|
||||||
|
&& comp_char_differs(off_from, off_to))
|
||||||
|
! || (cols > 1 && ScreenLines[off_from + 1]
|
||||||
|
! != ScreenLines[off_to + 1])))
|
||||||
|
#endif
|
||||||
|
))
|
||||||
|
return TRUE;
|
||||||
|
--- 5332,5340 ----
|
||||||
|
&& (ScreenLinesUC[off_from] != ScreenLinesUC[off_to]
|
||||||
|
|| (ScreenLinesUC[off_from] != 0
|
||||||
|
&& comp_char_differs(off_from, off_to))
|
||||||
|
! || ((*mb_off2cells)(off_from, off_from + cols) > 1
|
||||||
|
! && ScreenLines[off_from + 1]
|
||||||
|
! != ScreenLines[off_to + 1])))
|
||||||
|
#endif
|
||||||
|
))
|
||||||
|
return TRUE;
|
||||||
|
*** ../vim-7.3.637/src/version.c 2012-08-23 18:43:06.000000000 +0200
|
||||||
|
--- src/version.c 2012-08-23 18:47:11.000000000 +0200
|
||||||
|
***************
|
||||||
|
*** 721,722 ****
|
||||||
|
--- 721,724 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 638,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
There is a fine line between courage and foolishness.
|
||||||
|
Unfortunately, it's not a fence.
|
||||||
|
|
||||||
|
/// 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 ///
|
@ -653,3 +653,22 @@ Individual patches for Vim 7.3:
|
|||||||
4897 7.3.620 building with recent Ruby on Win32 doesn't work
|
4897 7.3.620 building with recent Ruby on Win32 doesn't work
|
||||||
2259 7.3.621 compiler warnings on 64 bit windows
|
2259 7.3.621 compiler warnings on 64 bit windows
|
||||||
1867 7.3.622 XPM library for Win32 can't be found
|
1867 7.3.622 XPM library for Win32 can't be found
|
||||||
|
<<<<<<< HEAD
|
||||||
|
=======
|
||||||
|
2426 7.3.623 Perl 5.14 commands crash Vim on MS-Windows
|
||||||
|
1800 7.3.624 when cancelling input() it returns the third argument
|
||||||
|
4327 7.3.625 "gn" does not handle zero-width matches correctly
|
||||||
|
1500 7.3.626 Python interface doesn't build with Python 2.4 or older
|
||||||
|
2803 7.3.627 expression not evaluated when using "n" flag with ":s"
|
||||||
|
1802 7.3.628 ":open!" results in a confusing error message
|
||||||
|
12019 7.3.629 there is no way to make 'shiftwidth' follow 'tabstop'
|
||||||
|
1487 7.3.630 "|" does not behave correctly when 'virtualedit' is set
|
||||||
|
10100 7.3.631 cannot complete user names
|
||||||
|
14770 7.3.632 cannot select beyond 222 columns with the mouse in xterm
|
||||||
|
2238 7.3.633 selection remains highlighted after selecting another text
|
||||||
|
1884 7.3.634 Month/Day format for undo is confusing
|
||||||
|
1586 7.3.635 system call during startup sets 'lines' to a wrong value
|
||||||
|
4539 7.3.636 (after 7.3.625) "gn" fails for some zero-width matches
|
||||||
|
3117 7.3.637 cannot catch error caused by a foldopen when there is no fold
|
||||||
|
1783 7.3.638 unecessary redraw of the previous character
|
||||||
|
>>>>>>> c8d55a4ffc9503371b9738188e056eba33134f47
|
||||||
|
21
vim-7.3-manpage-typo-668894-675480.patch
Normal file
21
vim-7.3-manpage-typo-668894-675480.patch
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
diff -up vim73/runtime/doc/vim.1.668894 vim73/runtime/doc/vim.1
|
||||||
|
--- vim73/runtime/doc/vim.1.668894 2010-05-15 13:04:00.000000000 +0200
|
||||||
|
+++ vim73/runtime/doc/vim.1 2012-08-28 12:41:36.000000000 +0200
|
||||||
|
@@ -73,7 +73,7 @@ To edit a file that starts with a dash,
|
||||||
|
.TP
|
||||||
|
\-
|
||||||
|
The file to edit is read from stdin. Commands are read from stderr, which
|
||||||
|
-should be a tty.
|
||||||
|
+should be a TTY.
|
||||||
|
.TP
|
||||||
|
\-t {tag}
|
||||||
|
The file to edit and the initial cursor position depends on a "tag", a sort
|
||||||
|
@@ -321,7 +321,7 @@ When N is omitted, open one tab page for
|
||||||
|
\-R
|
||||||
|
Read-only mode.
|
||||||
|
The 'readonly' option will be set.
|
||||||
|
-You can still edit the buffer, but will be prevented from accidently
|
||||||
|
+You can still edit the buffer, but will be prevented from accidentally
|
||||||
|
overwriting a file.
|
||||||
|
If you do want to overwrite a file, add an exclamation mark to the Ex command,
|
||||||
|
as in ":w!".
|
65
vim.spec
65
vim.spec
@ -18,7 +18,7 @@
|
|||||||
#used for pre-releases:
|
#used for pre-releases:
|
||||||
%define beta %{nil}
|
%define beta %{nil}
|
||||||
%define vimdir vim73%{?beta}
|
%define vimdir vim73%{?beta}
|
||||||
%define patchlevel 622
|
%define patchlevel 638
|
||||||
|
|
||||||
Summary: The VIM editor
|
Summary: The VIM editor
|
||||||
URL: http://www.vim.org/
|
URL: http://www.vim.org/
|
||||||
@ -678,18 +678,35 @@ Patch619: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.619
|
|||||||
Patch620: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.620
|
Patch620: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.620
|
||||||
Patch621: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.621
|
Patch621: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.621
|
||||||
Patch622: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.622
|
Patch622: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.622
|
||||||
|
Patch623: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.623
|
||||||
|
Patch624: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.624
|
||||||
|
Patch625: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.625
|
||||||
|
Patch626: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.626
|
||||||
|
Patch627: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.627
|
||||||
|
Patch628: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.628
|
||||||
|
Patch629: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.629
|
||||||
|
Patch630: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.630
|
||||||
|
Patch631: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.631
|
||||||
|
Patch632: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.632
|
||||||
|
Patch633: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.633
|
||||||
|
Patch634: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.634
|
||||||
|
Patch635: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.635
|
||||||
|
Patch636: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.636
|
||||||
|
Patch637: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.637
|
||||||
|
Patch638: ftp://ftp.vim.org/pub/vim/patches/7.3/7.3.638
|
||||||
|
|
||||||
Patch3000: vim-7.3-syntax.patch
|
Patch3000: vim-7.3-syntax.patch
|
||||||
Patch3002: vim-7.1-nowarnings.patch
|
Patch3002: vim-7.1-nowarnings.patch
|
||||||
Patch3003: vim-7.0-rclocation.patch
|
Patch3003: vim-6.1-rh3.patch
|
||||||
Patch3004: vim-6.4-checkhl.patch
|
Patch3004: vim-7.0-rclocation.patch
|
||||||
Patch3005: vim-7.3-fstabsyntax.patch
|
Patch3006: vim-6.4-checkhl.patch
|
||||||
Patch3006: vim-7.0-warning.patch
|
Patch3007: vim-7.3-fstabsyntax.patch
|
||||||
Patch3007: vim-7.0-syncolor.patch
|
Patch3008: vim-7.0-warning.patch
|
||||||
Patch3008: vim-7.0-specedit.patch
|
Patch3009: vim-7.0-syncolor.patch
|
||||||
Patch3009: vim72-rh514717.patch
|
Patch3010: vim-7.0-specedit.patch
|
||||||
Patch3010: vim-7.3-bug816848.patch
|
Patch3011: vim72-rh514717.patch
|
||||||
Patch3011: vim-7.3-spec-epoch.patch
|
Patch3012: vim-7.3-bug816848.patch
|
||||||
|
Patch3013: vim-7.3-manpage-typo-668894-675480.patch
|
||||||
|
|
||||||
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
BuildRequires: python-devel ncurses-devel gettext perl-devel
|
BuildRequires: python-devel ncurses-devel gettext perl-devel
|
||||||
@ -1446,6 +1463,22 @@ perl -pi -e "s,bin/nawk,bin/awk,g" runtime/tools/mve.awk
|
|||||||
%patch620 -p0
|
%patch620 -p0
|
||||||
%patch621 -p0
|
%patch621 -p0
|
||||||
%patch622 -p0
|
%patch622 -p0
|
||||||
|
%patch623 -p0
|
||||||
|
%patch624 -p0
|
||||||
|
%patch625 -p0
|
||||||
|
%patch626 -p0
|
||||||
|
%patch627 -p0
|
||||||
|
%patch628 -p0
|
||||||
|
%patch629 -p0
|
||||||
|
%patch630 -p0
|
||||||
|
%patch631 -p0
|
||||||
|
%patch632 -p0
|
||||||
|
%patch633 -p0
|
||||||
|
%patch634 -p0
|
||||||
|
%patch635 -p0
|
||||||
|
%patch636 -p0
|
||||||
|
%patch637 -p0
|
||||||
|
%patch638 -p0
|
||||||
|
|
||||||
|
|
||||||
# install spell files
|
# install spell files
|
||||||
@ -1464,6 +1497,8 @@ perl -pi -e "s,bin/nawk,bin/awk,g" runtime/tools/mve.awk
|
|||||||
%patch3009 -p1
|
%patch3009 -p1
|
||||||
%patch3010 -p1
|
%patch3010 -p1
|
||||||
%patch3011 -p1
|
%patch3011 -p1
|
||||||
|
%patch3012 -p1
|
||||||
|
%patch3013 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
cp -f %{SOURCE5} .
|
cp -f %{SOURCE5} .
|
||||||
@ -1699,6 +1734,7 @@ done
|
|||||||
for i in rvim.1 gvim.1 gvimdiff.1; do
|
for i in rvim.1 gvim.1 gvimdiff.1; do
|
||||||
echo ".so man1/vim.1" > $RPM_BUILD_ROOT/%{_mandir}/man1/$i
|
echo ".so man1/vim.1" > $RPM_BUILD_ROOT/%{_mandir}/man1/$i
|
||||||
done
|
done
|
||||||
|
touch $RPM_BUILD_ROOT/%{_datadir}/%{name}/vimfiles/doc/tags
|
||||||
|
|
||||||
%post X11
|
%post X11
|
||||||
touch --no-create %{_datadir}/icons/hicolor
|
touch --no-create %{_datadir}/icons/hicolor
|
||||||
@ -1871,6 +1907,7 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%dir %{_datadir}/%{name}/vimfiles/colors
|
%dir %{_datadir}/%{name}/vimfiles/colors
|
||||||
%dir %{_datadir}/%{name}/vimfiles/compiler
|
%dir %{_datadir}/%{name}/vimfiles/compiler
|
||||||
%dir %{_datadir}/%{name}/vimfiles/doc
|
%dir %{_datadir}/%{name}/vimfiles/doc
|
||||||
|
%ghost %{_datadir}/%{name}/vimfiles/doc/tags
|
||||||
%dir %{_datadir}/%{name}/vimfiles/ftdetect
|
%dir %{_datadir}/%{name}/vimfiles/ftdetect
|
||||||
%dir %{_datadir}/%{name}/vimfiles/ftplugin
|
%dir %{_datadir}/%{name}/vimfiles/ftplugin
|
||||||
%dir %{_datadir}/%{name}/vimfiles/indent
|
%dir %{_datadir}/%{name}/vimfiles/indent
|
||||||
@ -1901,6 +1938,14 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%{_datadir}/icons/hicolor/*/apps/*
|
%{_datadir}/icons/hicolor/*/apps/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Aug 28 2012 Karsten Hopp <karsten@redhat.com> 7.3.638-2
|
||||||
|
- fix some man page typos (#668894, #675480)
|
||||||
|
- own usr/share/vim/vimfiles/doc/tags (#845564)
|
||||||
|
- add path to csope database (#844843)
|
||||||
|
|
||||||
|
* Tue Aug 28 2012 Karsten Hopp <karsten@redhat.com> 7.3.638-1
|
||||||
|
- patchlevel 638
|
||||||
|
|
||||||
* Mon Aug 06 2012 Karsten Hopp <karsten@redhat.com> 2:7.3.622-2
|
* Mon Aug 06 2012 Karsten Hopp <karsten@redhat.com> 2:7.3.622-2
|
||||||
- add epoch to spec.vim and automatic changelog entries
|
- add epoch to spec.vim and automatic changelog entries
|
||||||
|
|
||||||
|
2
vimrc
2
vimrc
@ -36,7 +36,7 @@ if has("cscope") && filereadable("/usr/bin/cscope")
|
|||||||
set nocsverb
|
set nocsverb
|
||||||
" add any database in current directory
|
" add any database in current directory
|
||||||
if filereadable("cscope.out")
|
if filereadable("cscope.out")
|
||||||
cs add cscope.out
|
cs add $PWD/cscope.out
|
||||||
" else add database pointed to by environment
|
" else add database pointed to by environment
|
||||||
elseif $CSCOPE_DB != ""
|
elseif $CSCOPE_DB != ""
|
||||||
cs add $CSCOPE_DB
|
cs add $CSCOPE_DB
|
||||||
|
Loading…
Reference in New Issue
Block a user