Merge branch 'master' into f21
This commit is contained in:
commit
a62b8bc8bc
47
7.4.308
Normal file
47
7.4.308
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.308
|
||||||
|
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.4.308
|
||||||
|
Problem: When using ":diffsplit" on an empty file the cursor is displayed
|
||||||
|
on the command line.
|
||||||
|
Solution: Limit the value of w_topfill.
|
||||||
|
Files: src/diff.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.307/src/diff.c 2013-09-20 20:13:48.000000000 +0200
|
||||||
|
--- src/diff.c 2014-05-28 11:30:11.724008432 +0200
|
||||||
|
***************
|
||||||
|
*** 622,627 ****
|
||||||
|
--- 622,628 ----
|
||||||
|
wp->w_topfill = (n < 0 ? 0 : n);
|
||||||
|
else if (n > 0 && n > wp->w_topfill)
|
||||||
|
wp->w_topfill = n;
|
||||||
|
+ check_topfill(wp, FALSE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*** ../vim-7.4.307/src/version.c 2014-05-22 21:22:15.361995652 +0200
|
||||||
|
--- src/version.c 2014-05-28 11:34:01.064010440 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 308,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
msdn.microsoft.com:
|
||||||
|
ERROR_SUCCESS 0 (0x0) The operation completed successfully.
|
||||||
|
I have always suspected that for Microsoft success is an error.
|
||||||
|
|
||||||
|
/// 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 ///
|
88
7.4.309
Normal file
88
7.4.309
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.309
|
||||||
|
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.4.309
|
||||||
|
Problem: When increasing the size of the lower window, the upper window
|
||||||
|
jumps back to the top. (Ron Aaron)
|
||||||
|
Solution: Change setting the topline. (Nobuhiro Takasaki)
|
||||||
|
Files: src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.308/src/window.c 2014-05-22 15:17:24.706440568 +0200
|
||||||
|
--- src/window.c 2014-05-28 13:24:40.308068558 +0200
|
||||||
|
***************
|
||||||
|
*** 5710,5717 ****
|
||||||
|
--wp->w_wrow;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
! else
|
||||||
|
{
|
||||||
|
while (sline > 0 && lnum > 1)
|
||||||
|
{
|
||||||
|
--- 5710,5718 ----
|
||||||
|
--wp->w_wrow;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
+ set_topline(wp, lnum);
|
||||||
|
}
|
||||||
|
! else if (sline > 0)
|
||||||
|
{
|
||||||
|
while (sline > 0 && lnum > 1)
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 5748,5761 ****
|
||||||
|
lnum++;
|
||||||
|
wp->w_wrow -= line_size + sline;
|
||||||
|
}
|
||||||
|
! else if (sline >= 0)
|
||||||
|
{
|
||||||
|
/* First line of file reached, use that as topline. */
|
||||||
|
lnum = 1;
|
||||||
|
wp->w_wrow -= sline;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
- set_topline(wp, lnum);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (wp == curwin)
|
||||||
|
--- 5749,5763 ----
|
||||||
|
lnum++;
|
||||||
|
wp->w_wrow -= line_size + sline;
|
||||||
|
}
|
||||||
|
! else if (sline > 0)
|
||||||
|
{
|
||||||
|
/* First line of file reached, use that as topline. */
|
||||||
|
lnum = 1;
|
||||||
|
wp->w_wrow -= sline;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ set_topline(wp, lnum);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (wp == curwin)
|
||||||
|
*** ../vim-7.4.308/src/version.c 2014-05-28 11:35:33.428011248 +0200
|
||||||
|
--- src/version.c 2014-05-28 13:33:54.244073407 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 309,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
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 ///
|
373
7.4.310
Normal file
373
7.4.310
Normal file
@ -0,0 +1,373 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.310
|
||||||
|
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.4.310
|
||||||
|
Problem: getpos()/setpos() don't include curswant.
|
||||||
|
Solution: Add a fifth number when getting/setting the cursor.
|
||||||
|
Files: src/eval.c, src/testdir/test_eval.in, src/testdir/test_eval.ok,
|
||||||
|
runtime/doc/eval.txt
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.309/src/eval.c 2014-05-22 18:59:54.506169240 +0200
|
||||||
|
--- src/eval.c 2014-05-28 14:23:37.608099523 +0200
|
||||||
|
***************
|
||||||
|
*** 764,770 ****
|
||||||
|
static void f_writefile __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_xor __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
|
||||||
|
! static int list2fpos __ARGS((typval_T *arg, pos_T *posp, int *fnump));
|
||||||
|
static pos_T *var2fpos __ARGS((typval_T *varp, int dollar_lnum, int *fnum));
|
||||||
|
static int get_env_len __ARGS((char_u **arg));
|
||||||
|
static int get_id_len __ARGS((char_u **arg));
|
||||||
|
--- 764,770 ----
|
||||||
|
static void f_writefile __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_xor __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
|
||||||
|
! static int list2fpos __ARGS((typval_T *arg, pos_T *posp, int *fnump, colnr_T *curswantp));
|
||||||
|
static pos_T *var2fpos __ARGS((typval_T *varp, int dollar_lnum, int *fnum));
|
||||||
|
static int get_env_len __ARGS((char_u **arg));
|
||||||
|
static int get_id_len __ARGS((char_u **arg));
|
||||||
|
***************
|
||||||
|
*** 9799,9812 ****
|
||||||
|
if (argvars[1].v_type == VAR_UNKNOWN)
|
||||||
|
{
|
||||||
|
pos_T pos;
|
||||||
|
|
||||||
|
! if (list2fpos(argvars, &pos, NULL) == FAIL)
|
||||||
|
return;
|
||||||
|
line = pos.lnum;
|
||||||
|
col = pos.col;
|
||||||
|
#ifdef FEAT_VIRTUALEDIT
|
||||||
|
coladd = pos.coladd;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
--- 9799,9815 ----
|
||||||
|
if (argvars[1].v_type == VAR_UNKNOWN)
|
||||||
|
{
|
||||||
|
pos_T pos;
|
||||||
|
+ colnr_T curswant = -1;
|
||||||
|
|
||||||
|
! if (list2fpos(argvars, &pos, NULL, &curswant) == FAIL)
|
||||||
|
return;
|
||||||
|
line = pos.lnum;
|
||||||
|
col = pos.col;
|
||||||
|
#ifdef FEAT_VIRTUALEDIT
|
||||||
|
coladd = pos.coladd;
|
||||||
|
#endif
|
||||||
|
+ if (curswant >= 0)
|
||||||
|
+ curwin->w_curswant = curswant - 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 11770,11775 ****
|
||||||
|
--- 11773,11780 ----
|
||||||
|
(fp != NULL) ? (varnumber_T)fp->coladd :
|
||||||
|
#endif
|
||||||
|
(varnumber_T)0);
|
||||||
|
+ if (fp == &curwin->w_cursor)
|
||||||
|
+ list_append_number(l, (varnumber_T)curwin->w_curswant + 1);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
rettv->vval.v_number = FALSE;
|
||||||
|
***************
|
||||||
|
*** 16751,16762 ****
|
||||||
|
pos_T pos;
|
||||||
|
int fnum;
|
||||||
|
char_u *name;
|
||||||
|
|
||||||
|
rettv->vval.v_number = -1;
|
||||||
|
name = get_tv_string_chk(argvars);
|
||||||
|
if (name != NULL)
|
||||||
|
{
|
||||||
|
! if (list2fpos(&argvars[1], &pos, &fnum) == OK)
|
||||||
|
{
|
||||||
|
if (--pos.col < 0)
|
||||||
|
pos.col = 0;
|
||||||
|
--- 16756,16768 ----
|
||||||
|
pos_T pos;
|
||||||
|
int fnum;
|
||||||
|
char_u *name;
|
||||||
|
+ colnr_T curswant = -1;
|
||||||
|
|
||||||
|
rettv->vval.v_number = -1;
|
||||||
|
name = get_tv_string_chk(argvars);
|
||||||
|
if (name != NULL)
|
||||||
|
{
|
||||||
|
! if (list2fpos(&argvars[1], &pos, &fnum, &curswant) == OK)
|
||||||
|
{
|
||||||
|
if (--pos.col < 0)
|
||||||
|
pos.col = 0;
|
||||||
|
***************
|
||||||
|
*** 16766,16771 ****
|
||||||
|
--- 16772,16779 ----
|
||||||
|
if (fnum == curbuf->b_fnum)
|
||||||
|
{
|
||||||
|
curwin->w_cursor = pos;
|
||||||
|
+ if (curswant >= 0)
|
||||||
|
+ curwin->w_curswant = curswant - 1;
|
||||||
|
check_cursor();
|
||||||
|
rettv->vval.v_number = 0;
|
||||||
|
}
|
||||||
|
***************
|
||||||
|
*** 19532,19552 ****
|
||||||
|
* validity.
|
||||||
|
*/
|
||||||
|
static int
|
||||||
|
! list2fpos(arg, posp, fnump)
|
||||||
|
typval_T *arg;
|
||||||
|
pos_T *posp;
|
||||||
|
int *fnump;
|
||||||
|
{
|
||||||
|
list_T *l = arg->vval.v_list;
|
||||||
|
long i = 0;
|
||||||
|
long n;
|
||||||
|
|
||||||
|
! /* List must be: [fnum, lnum, col, coladd], where "fnum" is only there
|
||||||
|
! * when "fnump" isn't NULL and "coladd" is optional. */
|
||||||
|
if (arg->v_type != VAR_LIST
|
||||||
|
|| l == NULL
|
||||||
|
|| l->lv_len < (fnump == NULL ? 2 : 3)
|
||||||
|
! || l->lv_len > (fnump == NULL ? 3 : 4))
|
||||||
|
return FAIL;
|
||||||
|
|
||||||
|
if (fnump != NULL)
|
||||||
|
--- 19540,19561 ----
|
||||||
|
* validity.
|
||||||
|
*/
|
||||||
|
static int
|
||||||
|
! list2fpos(arg, posp, fnump, curswantp)
|
||||||
|
typval_T *arg;
|
||||||
|
pos_T *posp;
|
||||||
|
int *fnump;
|
||||||
|
+ colnr_T *curswantp;
|
||||||
|
{
|
||||||
|
list_T *l = arg->vval.v_list;
|
||||||
|
long i = 0;
|
||||||
|
long n;
|
||||||
|
|
||||||
|
! /* List must be: [fnum, lnum, col, coladd, curswant], where "fnum" is only
|
||||||
|
! * there when "fnump" isn't NULL; "coladd" and "curswant" are optional. */
|
||||||
|
if (arg->v_type != VAR_LIST
|
||||||
|
|| l == NULL
|
||||||
|
|| l->lv_len < (fnump == NULL ? 2 : 3)
|
||||||
|
! || l->lv_len > (fnump == NULL ? 4 : 5))
|
||||||
|
return FAIL;
|
||||||
|
|
||||||
|
if (fnump != NULL)
|
||||||
|
***************
|
||||||
|
*** 19570,19582 ****
|
||||||
|
posp->col = n;
|
||||||
|
|
||||||
|
#ifdef FEAT_VIRTUALEDIT
|
||||||
|
! n = list_find_nr(l, i, NULL);
|
||||||
|
if (n < 0)
|
||||||
|
posp->coladd = 0;
|
||||||
|
else
|
||||||
|
posp->coladd = n;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return OK;
|
||||||
|
}
|
||||||
|
|
||||||
|
--- 19579,19594 ----
|
||||||
|
posp->col = n;
|
||||||
|
|
||||||
|
#ifdef FEAT_VIRTUALEDIT
|
||||||
|
! n = list_find_nr(l, i, NULL); /* off */
|
||||||
|
if (n < 0)
|
||||||
|
posp->coladd = 0;
|
||||||
|
else
|
||||||
|
posp->coladd = n;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+ if (curswantp != NULL)
|
||||||
|
+ *curswantp = list_find_nr(l, i + 1, NULL); /* curswant */
|
||||||
|
+
|
||||||
|
return OK;
|
||||||
|
}
|
||||||
|
|
||||||
|
*** ../vim-7.4.309/src/testdir/test_eval.in 2014-04-29 17:41:18.351689927 +0200
|
||||||
|
--- src/testdir/test_eval.in 2014-05-28 14:22:31.780098947 +0200
|
||||||
|
***************
|
||||||
|
*** 190,198 ****
|
||||||
|
--- 190,207 ----
|
||||||
|
:$put =v:exception
|
||||||
|
:endtry
|
||||||
|
:"
|
||||||
|
+ :$put ='{{{1 setpos/getpos'
|
||||||
|
+ /^012345678
|
||||||
|
+ 6l:let sp = getpos('.')
|
||||||
|
+ 0:call setpos('.', sp)
|
||||||
|
+ jyl:$put
|
||||||
|
+ :"
|
||||||
|
:/^start:/+1,$wq! test.out
|
||||||
|
:" vim: et ts=4 isk-=\: fmr=???,???
|
||||||
|
:call getchar()
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
+ 012345678
|
||||||
|
+ 012345678
|
||||||
|
+
|
||||||
|
start:
|
||||||
|
*** ../vim-7.4.309/src/testdir/test_eval.ok 2014-04-29 17:41:18.351689927 +0200
|
||||||
|
--- src/testdir/test_eval.ok 2014-05-28 14:19:31.836097372 +0200
|
||||||
|
***************
|
||||||
|
*** 346,348 ****
|
||||||
|
--- 346,350 ----
|
||||||
|
Bar exists: 1
|
||||||
|
func Bar exists: 1
|
||||||
|
Vim(call):E116: Invalid arguments for function append
|
||||||
|
+ {{{1 setpos/getpos
|
||||||
|
+ 6
|
||||||
|
*** ../vim-7.4.309/runtime/doc/eval.txt 2014-05-07 18:35:25.661216052 +0200
|
||||||
|
--- runtime/doc/eval.txt 2014-05-28 14:04:40.928089573 +0200
|
||||||
|
***************
|
||||||
|
*** 2587,2595 ****
|
||||||
|
cursor({list})
|
||||||
|
Positions the cursor at the column (byte count) {col} in the
|
||||||
|
line {lnum}. The first column is one.
|
||||||
|
When there is one argument {list} this is used as a |List|
|
||||||
|
! with two or three items {lnum}, {col} and {off}. This is like
|
||||||
|
! the return value of |getpos()|, but without the first item.
|
||||||
|
Does not change the jumplist.
|
||||||
|
If {lnum} is greater than the number of lines in the buffer,
|
||||||
|
the cursor will be positioned at the last line in the buffer.
|
||||||
|
--- 2587,2600 ----
|
||||||
|
cursor({list})
|
||||||
|
Positions the cursor at the column (byte count) {col} in the
|
||||||
|
line {lnum}. The first column is one.
|
||||||
|
+
|
||||||
|
When there is one argument {list} this is used as a |List|
|
||||||
|
! with two, three or four item:
|
||||||
|
! [{lnum}, {col}, {off}]
|
||||||
|
! [{lnum}, {col}, {off}, {curswant}]
|
||||||
|
! This is like the return value of |getpos()|, but without the
|
||||||
|
! first item.
|
||||||
|
!
|
||||||
|
Does not change the jumplist.
|
||||||
|
If {lnum} is greater than the number of lines in the buffer,
|
||||||
|
the cursor will be positioned at the last line in the buffer.
|
||||||
|
***************
|
||||||
|
*** 4475,4482 ****
|
||||||
|
*getpos()*
|
||||||
|
getpos({expr}) Get the position for {expr}. For possible values of {expr}
|
||||||
|
see |line()|.
|
||||||
|
! The result is a |List| with four numbers:
|
||||||
|
[bufnum, lnum, col, off]
|
||||||
|
"bufnum" is zero, unless a mark like '0 or 'A is used, then it
|
||||||
|
is the buffer number of the mark.
|
||||||
|
"lnum" and "col" are the position in the buffer. The first
|
||||||
|
--- 4490,4498 ----
|
||||||
|
*getpos()*
|
||||||
|
getpos({expr}) Get the position for {expr}. For possible values of {expr}
|
||||||
|
see |line()|.
|
||||||
|
! The result is a |List| with four or five numbers:
|
||||||
|
[bufnum, lnum, col, off]
|
||||||
|
+ [bufnum, lnum, col, off, curswant]
|
||||||
|
"bufnum" is zero, unless a mark like '0 or 'A is used, then it
|
||||||
|
is the buffer number of the mark.
|
||||||
|
"lnum" and "col" are the position in the buffer. The first
|
||||||
|
***************
|
||||||
|
*** 4485,4490 ****
|
||||||
|
--- 4501,4511 ----
|
||||||
|
it is the offset in screen columns from the start of the
|
||||||
|
character. E.g., a position within a <Tab> or after the last
|
||||||
|
character.
|
||||||
|
+ The "curswant" number is only added for getpos('.'), it is the
|
||||||
|
+ preferred column when moving the cursor vertically.
|
||||||
|
+ Note that for '< and '> Visual mode matters: when it is "V"
|
||||||
|
+ (visual line mode) the column of '< is zero and the column of
|
||||||
|
+ '> is a large number.
|
||||||
|
This can be used to save and restore the cursor position: >
|
||||||
|
let save_cursor = getpos(".")
|
||||||
|
MoveTheCursorAround
|
||||||
|
***************
|
||||||
|
*** 5289,5296 ****
|
||||||
|
. the cursor
|
||||||
|
'x mark x
|
||||||
|
|
||||||
|
! {list} must be a |List| with four numbers:
|
||||||
|
[bufnum, lnum, col, off]
|
||||||
|
|
||||||
|
"bufnum" is the buffer number. Zero can be used for the
|
||||||
|
current buffer. Setting the cursor is only possible for
|
||||||
|
--- 5310,5318 ----
|
||||||
|
. the cursor
|
||||||
|
'x mark x
|
||||||
|
|
||||||
|
! {list} must be a |List| with four or five numbers:
|
||||||
|
[bufnum, lnum, col, off]
|
||||||
|
+ [bufnum, lnum, col, off, curswant]
|
||||||
|
|
||||||
|
"bufnum" is the buffer number. Zero can be used for the
|
||||||
|
current buffer. Setting the cursor is only possible for
|
||||||
|
***************
|
||||||
|
*** 5308,5320 ****
|
||||||
|
character. E.g., a position within a <Tab> or after the last
|
||||||
|
character.
|
||||||
|
|
||||||
|
Returns 0 when the position could be set, -1 otherwise.
|
||||||
|
An error message is given if {expr} is invalid.
|
||||||
|
|
||||||
|
Also see |getpos()|
|
||||||
|
|
||||||
|
This does not restore the preferred column for moving
|
||||||
|
! vertically. See |winrestview()| for that.
|
||||||
|
|
||||||
|
|
||||||
|
setqflist({list} [, {action}]) *setqflist()*
|
||||||
|
--- 5330,5355 ----
|
||||||
|
character. E.g., a position within a <Tab> or after the last
|
||||||
|
character.
|
||||||
|
|
||||||
|
+ The "curswant" number is only used when setting the cursor
|
||||||
|
+ position. It sets the preferred column for when moving the
|
||||||
|
+ cursor vertically. When the "curswant" number is missing the
|
||||||
|
+ preferred column is not set. When it is present and setting a
|
||||||
|
+ mark position it is not used.
|
||||||
|
+
|
||||||
|
+ Note that for '< and '> changing the line number may result in
|
||||||
|
+ the marks to be effectively be swapped, so that '< is always
|
||||||
|
+ before '>.
|
||||||
|
+
|
||||||
|
Returns 0 when the position could be set, -1 otherwise.
|
||||||
|
An error message is given if {expr} is invalid.
|
||||||
|
|
||||||
|
Also see |getpos()|
|
||||||
|
|
||||||
|
This does not restore the preferred column for moving
|
||||||
|
! vertically; if you set the cursor position with this, |j| and
|
||||||
|
! |k| motions will jump to previous columns! Use |cursor()| to
|
||||||
|
! also set the preferred column. Also see the "curswant" key in
|
||||||
|
! |winrestview()|.
|
||||||
|
|
||||||
|
|
||||||
|
setqflist({list} [, {action}]) *setqflist()*
|
||||||
|
*** ../vim-7.4.309/src/version.c 2014-05-28 13:42:59.884078184 +0200
|
||||||
|
--- src/version.c 2014-05-28 14:27:20.132101471 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 310,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
218. Your spouse hands you a gift wrapped magnet with your PC's name
|
||||||
|
on it and you accuse him or her of genocide.
|
||||||
|
|
||||||
|
/// 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 ///
|
127
7.4.311
Normal file
127
7.4.311
Normal file
@ -0,0 +1,127 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.311
|
||||||
|
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.4.311
|
||||||
|
Problem: Can't use winrestview to only restore part of the view.
|
||||||
|
Solution: Handle missing items in the dict. (Christian Brabandt)
|
||||||
|
Files: src/eval.c, runtime/doc/eval.txt
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.310/src/eval.c 2014-05-28 14:32:47.156104334 +0200
|
||||||
|
--- src/eval.c 2014-05-28 16:42:25.196172421 +0200
|
||||||
|
***************
|
||||||
|
*** 19231,19250 ****
|
||||||
|
EMSG(_(e_invarg));
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! curwin->w_cursor.lnum = get_dict_number(dict, (char_u *)"lnum");
|
||||||
|
! curwin->w_cursor.col = get_dict_number(dict, (char_u *)"col");
|
||||||
|
#ifdef FEAT_VIRTUALEDIT
|
||||||
|
! curwin->w_cursor.coladd = get_dict_number(dict, (char_u *)"coladd");
|
||||||
|
#endif
|
||||||
|
! curwin->w_curswant = get_dict_number(dict, (char_u *)"curswant");
|
||||||
|
! curwin->w_set_curswant = FALSE;
|
||||||
|
|
||||||
|
! set_topline(curwin, get_dict_number(dict, (char_u *)"topline"));
|
||||||
|
#ifdef FEAT_DIFF
|
||||||
|
! curwin->w_topfill = get_dict_number(dict, (char_u *)"topfill");
|
||||||
|
#endif
|
||||||
|
! curwin->w_leftcol = get_dict_number(dict, (char_u *)"leftcol");
|
||||||
|
! curwin->w_skipcol = get_dict_number(dict, (char_u *)"skipcol");
|
||||||
|
|
||||||
|
check_cursor();
|
||||||
|
win_new_height(curwin, curwin->w_height);
|
||||||
|
--- 19231,19260 ----
|
||||||
|
EMSG(_(e_invarg));
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! if (dict_find(dict, (char_u *)"lnum", -1) != NULL)
|
||||||
|
! curwin->w_cursor.lnum = get_dict_number(dict, (char_u *)"lnum");
|
||||||
|
! if (dict_find(dict, (char_u *)"col", -1) != NULL)
|
||||||
|
! curwin->w_cursor.col = get_dict_number(dict, (char_u *)"col");
|
||||||
|
#ifdef FEAT_VIRTUALEDIT
|
||||||
|
! if (dict_find(dict, (char_u *)"coladd", -1) != NULL)
|
||||||
|
! curwin->w_cursor.coladd = get_dict_number(dict, (char_u *)"coladd");
|
||||||
|
#endif
|
||||||
|
! if (dict_find(dict, (char_u *)"curswant", -1) != NULL)
|
||||||
|
! {
|
||||||
|
! curwin->w_curswant = get_dict_number(dict, (char_u *)"curswant");
|
||||||
|
! curwin->w_set_curswant = FALSE;
|
||||||
|
! }
|
||||||
|
|
||||||
|
! if (dict_find(dict, (char_u *)"topline", -1) != NULL)
|
||||||
|
! set_topline(curwin, get_dict_number(dict, (char_u *)"topline"));
|
||||||
|
#ifdef FEAT_DIFF
|
||||||
|
! if (dict_find(dict, (char_u *)"topfill", -1) != NULL)
|
||||||
|
! curwin->w_topfill = get_dict_number(dict, (char_u *)"topfill");
|
||||||
|
#endif
|
||||||
|
! if (dict_find(dict, (char_u *)"leftcol", -1) != NULL)
|
||||||
|
! curwin->w_leftcol = get_dict_number(dict, (char_u *)"leftcol");
|
||||||
|
! if (dict_find(dict, (char_u *)"skipcol", -1) != NULL)
|
||||||
|
! curwin->w_skipcol = get_dict_number(dict, (char_u *)"skipcol");
|
||||||
|
|
||||||
|
check_cursor();
|
||||||
|
win_new_height(curwin, curwin->w_height);
|
||||||
|
*** ../vim-7.4.310/runtime/doc/eval.txt 2014-05-28 14:32:47.164104334 +0200
|
||||||
|
--- runtime/doc/eval.txt 2014-05-28 16:42:25.192172421 +0200
|
||||||
|
***************
|
||||||
|
*** 6404,6409 ****
|
||||||
|
--- 6414,6429 ----
|
||||||
|
winrestview({dict})
|
||||||
|
Uses the |Dictionary| returned by |winsaveview()| to restore
|
||||||
|
the view of the current window.
|
||||||
|
+ Note: The {dict} does not have to contain all values, that are
|
||||||
|
+ returned by |winsaveview()|. If values are missing, those
|
||||||
|
+ settings won't be restored. So you can use: >
|
||||||
|
+ :call winrestview({'curswant': 4})
|
||||||
|
+ <
|
||||||
|
+ This will only set the curswant value (the column the cursor
|
||||||
|
+ wants to move on vertical movements) of the cursor to column 5
|
||||||
|
+ (yes, that is 5), while all other settings will remain the
|
||||||
|
+ same. This is useful, if you set the cursor position manually.
|
||||||
|
+
|
||||||
|
If you have changed the values the result is unpredictable.
|
||||||
|
If the window size changed the result won't be the same.
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 6418,6424 ****
|
||||||
|
not opened when moving around.
|
||||||
|
The return value includes:
|
||||||
|
lnum cursor line number
|
||||||
|
! col cursor column
|
||||||
|
coladd cursor column offset for 'virtualedit'
|
||||||
|
curswant column for vertical movement
|
||||||
|
topline first line in the window
|
||||||
|
--- 6438,6446 ----
|
||||||
|
not opened when moving around.
|
||||||
|
The return value includes:
|
||||||
|
lnum cursor line number
|
||||||
|
! col cursor column (Note: the first column
|
||||||
|
! zero, as opposed to what getpos()
|
||||||
|
! returns)
|
||||||
|
coladd cursor column offset for 'virtualedit'
|
||||||
|
curswant column for vertical movement
|
||||||
|
topline first line in the window
|
||||||
|
*** ../vim-7.4.310/src/version.c 2014-05-28 14:32:47.164104334 +0200
|
||||||
|
--- src/version.c 2014-05-28 16:45:19.200173944 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 311,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
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 ///
|
194
7.4.312
Normal file
194
7.4.312
Normal file
@ -0,0 +1,194 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.312
|
||||||
|
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.4.312
|
||||||
|
Problem: Cannot figure out what argument list is being used for a window.
|
||||||
|
Solution: Add the arglistid() function. (Marcin Szamotulski)
|
||||||
|
Files: runtime/doc/eval.txt, runtime/doc/usr_41.txt, src/eval.c,
|
||||||
|
src/ex_docmd.c, src/globals.h, src/structs.h, src/main.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.311/runtime/doc/eval.txt 2014-05-28 16:47:11.396174926 +0200
|
||||||
|
--- runtime/doc/eval.txt 2014-05-28 18:00:06.248213223 +0200
|
||||||
|
***************
|
||||||
|
*** 1716,1721 ****
|
||||||
|
--- 1716,1723 ----
|
||||||
|
append( {lnum}, {list}) Number append lines {list} below line {lnum}
|
||||||
|
argc() Number number of files in the argument list
|
||||||
|
argidx() Number current index in the argument list
|
||||||
|
+ arglistid( [{winnr}, [ {tabnr}]])
|
||||||
|
+ Number argument list id
|
||||||
|
argv( {nr}) String {nr} entry of the argument list
|
||||||
|
argv( ) List the argument list
|
||||||
|
asin( {expr}) Float arc sine of {expr}
|
||||||
|
***************
|
||||||
|
*** 2103,2108 ****
|
||||||
|
--- 2105,2122 ----
|
||||||
|
argidx() The result is the current index in the argument list. 0 is
|
||||||
|
the first file. argc() - 1 is the last one. See |arglist|.
|
||||||
|
|
||||||
|
+ *arglistid()*
|
||||||
|
+ arglistid([{winnr}, [ {tabnr} ]])
|
||||||
|
+ Return the argument list ID. This is a number which
|
||||||
|
+ identifies the argument list being used. Zero is used for the
|
||||||
|
+ global argument list.
|
||||||
|
+ Return zero if the arguments are invalid.
|
||||||
|
+
|
||||||
|
+ Without arguments use the current window.
|
||||||
|
+ With {winnr} only use this window in the current tab page.
|
||||||
|
+ With {winnr} and {tabnr} use the window in the specified tab
|
||||||
|
+ page.
|
||||||
|
+
|
||||||
|
*argv()*
|
||||||
|
argv([{nr}]) The result is the {nr}th file in the argument list of the
|
||||||
|
current window. See |arglist|. "argv(0)" is the first one.
|
||||||
|
*** ../vim-7.4.311/runtime/doc/usr_41.txt 2014-03-25 18:23:27.054087691 +0100
|
||||||
|
--- runtime/doc/usr_41.txt 2014-05-28 18:07:43.096217222 +0200
|
||||||
|
***************
|
||||||
|
*** 770,775 ****
|
||||||
|
--- 772,778 ----
|
||||||
|
Buffers, windows and the argument list:
|
||||||
|
argc() number of entries in the argument list
|
||||||
|
argidx() current position in the argument list
|
||||||
|
+ arglistid() get id of the argument list
|
||||||
|
argv() get one entry from the argument list
|
||||||
|
bufexists() check if a buffer exists
|
||||||
|
buflisted() check if a buffer exists and is listed
|
||||||
|
*** ../vim-7.4.311/src/eval.c 2014-05-28 16:47:11.392174926 +0200
|
||||||
|
--- src/eval.c 2014-05-28 18:11:10.264219035 +0200
|
||||||
|
***************
|
||||||
|
*** 463,468 ****
|
||||||
|
--- 463,469 ----
|
||||||
|
static void f_append __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_argc __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_argidx __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
+ static void f_arglistid __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_argv __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
#ifdef FEAT_FLOAT
|
||||||
|
static void f_asin __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
***************
|
||||||
|
*** 7875,7880 ****
|
||||||
|
--- 7876,7882 ----
|
||||||
|
{"append", 2, 2, f_append},
|
||||||
|
{"argc", 0, 0, f_argc},
|
||||||
|
{"argidx", 0, 0, f_argidx},
|
||||||
|
+ {"arglistid", 0, 2, f_arglistid},
|
||||||
|
{"argv", 0, 1, f_argv},
|
||||||
|
#ifdef FEAT_FLOAT
|
||||||
|
{"asin", 1, 1, f_asin}, /* WJMc */
|
||||||
|
***************
|
||||||
|
*** 8859,8864 ****
|
||||||
|
--- 8861,8901 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
+ * "arglistid()" function
|
||||||
|
+ */
|
||||||
|
+ static void
|
||||||
|
+ f_arglistid(argvars, rettv)
|
||||||
|
+ typval_T *argvars UNUSED;
|
||||||
|
+ typval_T *rettv;
|
||||||
|
+ {
|
||||||
|
+ win_T *wp;
|
||||||
|
+ tabpage_T *tp = NULL;
|
||||||
|
+ long n;
|
||||||
|
+
|
||||||
|
+ rettv->vval.v_number = -1;
|
||||||
|
+ if (argvars[0].v_type != VAR_UNKNOWN)
|
||||||
|
+ {
|
||||||
|
+ if (argvars[1].v_type != VAR_UNKNOWN)
|
||||||
|
+ {
|
||||||
|
+ n = get_tv_number(&argvars[1]);
|
||||||
|
+ if (n >= 0)
|
||||||
|
+ tp = find_tabpage(n);
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ tp = curtab;
|
||||||
|
+
|
||||||
|
+ if (tp != NULL)
|
||||||
|
+ {
|
||||||
|
+ wp = find_win_by_nr(&argvars[0], tp);
|
||||||
|
+ if (wp != NULL)
|
||||||
|
+ rettv->vval.v_number = wp->w_alist->id;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ rettv->vval.v_number = curwin->w_alist->id;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
* "argv(nr)" function
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
*** ../vim-7.4.311/src/ex_docmd.c 2014-05-07 21:14:42.913299714 +0200
|
||||||
|
--- src/ex_docmd.c 2014-05-28 18:10:01.696218435 +0200
|
||||||
|
***************
|
||||||
|
*** 7211,7216 ****
|
||||||
|
--- 7211,7217 ----
|
||||||
|
else
|
||||||
|
{
|
||||||
|
curwin->w_alist->al_refcount = 1;
|
||||||
|
+ curwin->w_alist->id = ++max_alist_id;
|
||||||
|
alist_init(curwin->w_alist);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*** ../vim-7.4.311/src/globals.h 2014-05-22 18:14:27.570224664 +0200
|
||||||
|
--- src/globals.h 2014-05-28 17:56:53.392211534 +0200
|
||||||
|
***************
|
||||||
|
*** 601,606 ****
|
||||||
|
--- 601,607 ----
|
||||||
|
* to this when the window is using the global argument list.
|
||||||
|
*/
|
||||||
|
EXTERN alist_T global_alist; /* global argument list */
|
||||||
|
+ EXTERN int max_alist_id INIT(= 0); /* the previous argument list id */
|
||||||
|
EXTERN int arg_had_last INIT(= FALSE); /* accessed last file in
|
||||||
|
global_alist */
|
||||||
|
|
||||||
|
*** ../vim-7.4.311/src/structs.h 2014-05-13 20:19:53.573808877 +0200
|
||||||
|
--- src/structs.h 2014-05-28 17:54:18.312210177 +0200
|
||||||
|
***************
|
||||||
|
*** 675,680 ****
|
||||||
|
--- 675,681 ----
|
||||||
|
{
|
||||||
|
garray_T al_ga; /* growarray with the array of file names */
|
||||||
|
int al_refcount; /* number of windows using this arglist */
|
||||||
|
+ int id; /* id of this arglist */
|
||||||
|
} alist_T;
|
||||||
|
|
||||||
|
/*
|
||||||
|
*** ../vim-7.4.311/src/main.c 2014-04-01 19:55:46.252787300 +0200
|
||||||
|
--- src/main.c 2014-05-28 18:09:32.040218175 +0200
|
||||||
|
***************
|
||||||
|
*** 322,327 ****
|
||||||
|
--- 322,328 ----
|
||||||
|
init_yank(); /* init yank buffers */
|
||||||
|
|
||||||
|
alist_init(&global_alist); /* Init the argument list to empty. */
|
||||||
|
+ global_alist.id = 0;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Set the default values for the options.
|
||||||
|
*** ../vim-7.4.311/src/version.c 2014-05-28 16:47:11.396174926 +0200
|
||||||
|
--- src/version.c 2014-05-28 17:25:32.644195071 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 312,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
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 ///
|
320
7.4.313
Normal file
320
7.4.313
Normal file
@ -0,0 +1,320 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.313
|
||||||
|
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.4.313 (after 7.4.310)
|
||||||
|
Problem: Changing the return value of getpos() causes an error. (Jie Zhu)
|
||||||
|
Solution: Revert getpos() and add getcurpos().
|
||||||
|
Files: src/eval.c, src/testdir/test_eval.in, src/testdir/test_eval.ok,
|
||||||
|
runtime/doc/eval.txt
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.312/src/eval.c 2014-05-28 18:22:37.876225054 +0200
|
||||||
|
--- src/eval.c 2014-05-28 20:11:55.364282457 +0200
|
||||||
|
***************
|
||||||
|
*** 560,565 ****
|
||||||
|
--- 560,566 ----
|
||||||
|
static void f_getline __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_getmatches __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_getpid __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
+ static void f_getcurpos __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_getpos __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_getqflist __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_getreg __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
***************
|
||||||
|
*** 7967,7972 ****
|
||||||
|
--- 7968,7974 ----
|
||||||
|
{"getcmdline", 0, 0, f_getcmdline},
|
||||||
|
{"getcmdpos", 0, 0, f_getcmdpos},
|
||||||
|
{"getcmdtype", 0, 0, f_getcmdtype},
|
||||||
|
+ {"getcurpos", 0, 0, f_getcurpos},
|
||||||
|
{"getcwd", 0, 0, f_getcwd},
|
||||||
|
{"getfontname", 0, 1, f_getfontname},
|
||||||
|
{"getfperm", 1, 1, f_getfperm},
|
||||||
|
***************
|
||||||
|
*** 11780,11785 ****
|
||||||
|
--- 11782,11800 ----
|
||||||
|
rettv->vval.v_number = mch_get_pid();
|
||||||
|
}
|
||||||
|
|
||||||
|
+ static void getpos_both __ARGS((typval_T *argvars, typval_T *rettv, int getcurpos));
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * "getcurpos()" function
|
||||||
|
+ */
|
||||||
|
+ static void
|
||||||
|
+ f_getcurpos(argvars, rettv)
|
||||||
|
+ typval_T *argvars;
|
||||||
|
+ typval_T *rettv;
|
||||||
|
+ {
|
||||||
|
+ getpos_both(argvars, rettv, TRUE);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* "getpos(string)" function
|
||||||
|
*/
|
||||||
|
***************
|
||||||
|
*** 11788,11793 ****
|
||||||
|
--- 11803,11817 ----
|
||||||
|
typval_T *argvars;
|
||||||
|
typval_T *rettv;
|
||||||
|
{
|
||||||
|
+ getpos_both(argvars, rettv, FALSE);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ static void
|
||||||
|
+ getpos_both(argvars, rettv, getcurpos)
|
||||||
|
+ typval_T *argvars;
|
||||||
|
+ typval_T *rettv;
|
||||||
|
+ int getcurpos;
|
||||||
|
+ {
|
||||||
|
pos_T *fp;
|
||||||
|
list_T *l;
|
||||||
|
int fnum = -1;
|
||||||
|
***************
|
||||||
|
*** 11795,11801 ****
|
||||||
|
if (rettv_list_alloc(rettv) == OK)
|
||||||
|
{
|
||||||
|
l = rettv->vval.v_list;
|
||||||
|
! fp = var2fpos(&argvars[0], TRUE, &fnum);
|
||||||
|
if (fnum != -1)
|
||||||
|
list_append_number(l, (varnumber_T)fnum);
|
||||||
|
else
|
||||||
|
--- 11819,11828 ----
|
||||||
|
if (rettv_list_alloc(rettv) == OK)
|
||||||
|
{
|
||||||
|
l = rettv->vval.v_list;
|
||||||
|
! if (getcurpos)
|
||||||
|
! fp = &curwin->w_cursor;
|
||||||
|
! else
|
||||||
|
! fp = var2fpos(&argvars[0], TRUE, &fnum);
|
||||||
|
if (fnum != -1)
|
||||||
|
list_append_number(l, (varnumber_T)fnum);
|
||||||
|
else
|
||||||
|
***************
|
||||||
|
*** 11810,11816 ****
|
||||||
|
(fp != NULL) ? (varnumber_T)fp->coladd :
|
||||||
|
#endif
|
||||||
|
(varnumber_T)0);
|
||||||
|
! if (fp == &curwin->w_cursor)
|
||||||
|
list_append_number(l, (varnumber_T)curwin->w_curswant + 1);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
--- 11837,11843 ----
|
||||||
|
(fp != NULL) ? (varnumber_T)fp->coladd :
|
||||||
|
#endif
|
||||||
|
(varnumber_T)0);
|
||||||
|
! if (getcurpos)
|
||||||
|
list_append_number(l, (varnumber_T)curwin->w_curswant + 1);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
*** ../vim-7.4.312/src/testdir/test_eval.in 2014-05-28 14:32:47.160104334 +0200
|
||||||
|
--- src/testdir/test_eval.in 2014-05-28 20:14:27.048283785 +0200
|
||||||
|
***************
|
||||||
|
*** 190,198 ****
|
||||||
|
:$put =v:exception
|
||||||
|
:endtry
|
||||||
|
:"
|
||||||
|
! :$put ='{{{1 setpos/getpos'
|
||||||
|
/^012345678
|
||||||
|
! 6l:let sp = getpos('.')
|
||||||
|
0:call setpos('.', sp)
|
||||||
|
jyl:$put
|
||||||
|
:"
|
||||||
|
--- 190,198 ----
|
||||||
|
:$put =v:exception
|
||||||
|
:endtry
|
||||||
|
:"
|
||||||
|
! :$put ='{{{1 getcurpos/setpos'
|
||||||
|
/^012345678
|
||||||
|
! 6l:let sp = getcurpos()
|
||||||
|
0:call setpos('.', sp)
|
||||||
|
jyl:$put
|
||||||
|
:"
|
||||||
|
*** ../vim-7.4.312/src/testdir/test_eval.ok 2014-05-28 14:32:47.160104334 +0200
|
||||||
|
--- src/testdir/test_eval.ok 2014-05-28 20:14:43.316283927 +0200
|
||||||
|
***************
|
||||||
|
*** 346,350 ****
|
||||||
|
Bar exists: 1
|
||||||
|
func Bar exists: 1
|
||||||
|
Vim(call):E116: Invalid arguments for function append
|
||||||
|
! {{{1 setpos/getpos
|
||||||
|
6
|
||||||
|
--- 346,350 ----
|
||||||
|
Bar exists: 1
|
||||||
|
func Bar exists: 1
|
||||||
|
Vim(call):E116: Invalid arguments for function append
|
||||||
|
! {{{1 getcurpos/setpos
|
||||||
|
6
|
||||||
|
*** ../vim-7.4.312/runtime/doc/eval.txt 2014-05-28 18:22:37.872225054 +0200
|
||||||
|
--- runtime/doc/eval.txt 2014-05-28 20:27:57.092290876 +0200
|
||||||
|
***************
|
||||||
|
*** 1808,1817 ****
|
||||||
|
getcmdline() String return the current command-line
|
||||||
|
getcmdpos() Number return cursor position in command-line
|
||||||
|
getcmdtype() String return the current command-line type
|
||||||
|
getcwd() String the current working directory
|
||||||
|
getfperm( {fname}) String file permissions of file {fname}
|
||||||
|
getfsize( {fname}) Number size in bytes of file {fname}
|
||||||
|
- getfontname( [{name}]) String name of font being used
|
||||||
|
getftime( {fname}) Number last modification time of file
|
||||||
|
getftype( {fname}) String description of type of file {fname}
|
||||||
|
getline( {lnum}) String line {lnum} of current buffer
|
||||||
|
--- 1808,1818 ----
|
||||||
|
getcmdline() String return the current command-line
|
||||||
|
getcmdpos() Number return cursor position in command-line
|
||||||
|
getcmdtype() String return the current command-line type
|
||||||
|
+ getcurpos() List position of the cursor
|
||||||
|
getcwd() String the current working directory
|
||||||
|
+ getfontname( [{name}]) String name of font being used
|
||||||
|
getfperm( {fname}) String file permissions of file {fname}
|
||||||
|
getfsize( {fname}) Number size in bytes of file {fname}
|
||||||
|
getftime( {fname}) Number last modification time of file
|
||||||
|
getftype( {fname}) String description of type of file {fname}
|
||||||
|
getline( {lnum}) String line {lnum} of current buffer
|
||||||
|
***************
|
||||||
|
*** 2606,2613 ****
|
||||||
|
with two, three or four item:
|
||||||
|
[{lnum}, {col}, {off}]
|
||||||
|
[{lnum}, {col}, {off}, {curswant}]
|
||||||
|
! This is like the return value of |getpos()|, but without the
|
||||||
|
! first item.
|
||||||
|
|
||||||
|
Does not change the jumplist.
|
||||||
|
If {lnum} is greater than the number of lines in the buffer,
|
||||||
|
--- 2607,2614 ----
|
||||||
|
with two, three or four item:
|
||||||
|
[{lnum}, {col}, {off}]
|
||||||
|
[{lnum}, {col}, {off}, {curswant}]
|
||||||
|
! This is like the return value of |getpos()| or |getcurpos|,
|
||||||
|
! but without the first item.
|
||||||
|
|
||||||
|
Does not change the jumplist.
|
||||||
|
If {lnum} is greater than the number of lines in the buffer,
|
||||||
|
***************
|
||||||
|
*** 2617,2622 ****
|
||||||
|
--- 2618,2625 ----
|
||||||
|
the cursor will be positioned at the last character in the
|
||||||
|
line.
|
||||||
|
If {col} is zero, the cursor will stay in the current column.
|
||||||
|
+ If {curswant} is given it is used to set the preferred column
|
||||||
|
+ for vertical movment. Otherwise {col} is used.
|
||||||
|
When 'virtualedit' is used {off} specifies the offset in
|
||||||
|
screen columns from the start of the character. E.g., a
|
||||||
|
position within a <Tab> or after the last character.
|
||||||
|
***************
|
||||||
|
*** 3339,3344 ****
|
||||||
|
--- 3347,3363 ----
|
||||||
|
Returns an empty string otherwise.
|
||||||
|
Also see |getcmdpos()|, |setcmdpos()| and |getcmdline()|.
|
||||||
|
|
||||||
|
+ *getcurpos()*
|
||||||
|
+ getcurpos() Get the position of the cursor. This is like getpos('.'), but
|
||||||
|
+ includes an extra item in the list:
|
||||||
|
+ [bufnum, lnum, col, off, curswant]
|
||||||
|
+ The "curswant" number is the preferred column when moving the
|
||||||
|
+ cursor vertically.
|
||||||
|
+ This can be used to save and restore the cursor position: >
|
||||||
|
+ let save_cursor = getcurpos()
|
||||||
|
+ MoveTheCursorAround
|
||||||
|
+ call setpos('.', save_cursor)
|
||||||
|
+
|
||||||
|
*getcwd()*
|
||||||
|
getcwd() The result is a String, which is the name of the current
|
||||||
|
working directory.
|
||||||
|
***************
|
||||||
|
*** 4493,4502 ****
|
||||||
|
|
||||||
|
*getpos()*
|
||||||
|
getpos({expr}) Get the position for {expr}. For possible values of {expr}
|
||||||
|
! see |line()|.
|
||||||
|
! The result is a |List| with four or five numbers:
|
||||||
|
[bufnum, lnum, col, off]
|
||||||
|
- [bufnum, lnum, col, off, curswant]
|
||||||
|
"bufnum" is zero, unless a mark like '0 or 'A is used, then it
|
||||||
|
is the buffer number of the mark.
|
||||||
|
"lnum" and "col" are the position in the buffer. The first
|
||||||
|
--- 4517,4526 ----
|
||||||
|
|
||||||
|
*getpos()*
|
||||||
|
getpos({expr}) Get the position for {expr}. For possible values of {expr}
|
||||||
|
! see |line()|. For getting the cursor position see
|
||||||
|
! |getcurpos()|.
|
||||||
|
! The result is a |List| with four numbers:
|
||||||
|
[bufnum, lnum, col, off]
|
||||||
|
"bufnum" is zero, unless a mark like '0 or 'A is used, then it
|
||||||
|
is the buffer number of the mark.
|
||||||
|
"lnum" and "col" are the position in the buffer. The first
|
||||||
|
***************
|
||||||
|
*** 4505,4520 ****
|
||||||
|
it is the offset in screen columns from the start of the
|
||||||
|
character. E.g., a position within a <Tab> or after the last
|
||||||
|
character.
|
||||||
|
- The "curswant" number is only added for getpos('.'), it is the
|
||||||
|
- preferred column when moving the cursor vertically.
|
||||||
|
Note that for '< and '> Visual mode matters: when it is "V"
|
||||||
|
(visual line mode) the column of '< is zero and the column of
|
||||||
|
'> is a large number.
|
||||||
|
! This can be used to save and restore the cursor position: >
|
||||||
|
! let save_cursor = getpos(".")
|
||||||
|
! MoveTheCursorAround
|
||||||
|
! call setpos('.', save_cursor)
|
||||||
|
! < Also see |setpos()|.
|
||||||
|
|
||||||
|
or({expr}, {expr}) *or()*
|
||||||
|
Bitwise OR on the two arguments. The arguments are converted
|
||||||
|
--- 4529,4542 ----
|
||||||
|
it is the offset in screen columns from the start of the
|
||||||
|
character. E.g., a position within a <Tab> or after the last
|
||||||
|
character.
|
||||||
|
Note that for '< and '> Visual mode matters: when it is "V"
|
||||||
|
(visual line mode) the column of '< is zero and the column of
|
||||||
|
'> is a large number.
|
||||||
|
! This can be used to save and restore the position of a mark: >
|
||||||
|
! let save_a_mark = getpos("'a")
|
||||||
|
! ...
|
||||||
|
! call setpos(''a', save_a_mark
|
||||||
|
! < Also see |getcurpos()| and |setpos()|.
|
||||||
|
|
||||||
|
or({expr}, {expr}) *or()*
|
||||||
|
Bitwise OR on the two arguments. The arguments are converted
|
||||||
|
***************
|
||||||
|
*** 5347,5353 ****
|
||||||
|
Returns 0 when the position could be set, -1 otherwise.
|
||||||
|
An error message is given if {expr} is invalid.
|
||||||
|
|
||||||
|
! Also see |getpos()|
|
||||||
|
|
||||||
|
This does not restore the preferred column for moving
|
||||||
|
vertically; if you set the cursor position with this, |j| and
|
||||||
|
--- 5369,5375 ----
|
||||||
|
Returns 0 when the position could be set, -1 otherwise.
|
||||||
|
An error message is given if {expr} is invalid.
|
||||||
|
|
||||||
|
! Also see |getpos()| and |getcurpos()|.
|
||||||
|
|
||||||
|
This does not restore the preferred column for moving
|
||||||
|
vertically; if you set the cursor position with this, |j| and
|
||||||
|
*** ../vim-7.4.312/src/version.c 2014-05-28 18:22:37.880225054 +0200
|
||||||
|
--- src/version.c 2014-05-28 20:15:52.164284530 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 313,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
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 ///
|
178
7.4.314
Normal file
178
7.4.314
Normal file
@ -0,0 +1,178 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.314
|
||||||
|
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.4.314
|
||||||
|
Problem: Completion messages can get in the way of a plugin.
|
||||||
|
Solution: Add 'c' flag to 'shortmess' option. (Shougo Matsu)
|
||||||
|
Files: runtime/doc/options.txt, src/edit.c, src/option.h, src/screen.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.313/runtime/doc/options.txt 2014-03-12 18:55:52.096906804 +0100
|
||||||
|
--- runtime/doc/options.txt 2014-05-28 20:55:14.640305211 +0200
|
||||||
|
***************
|
||||||
|
*** 6252,6257 ****
|
||||||
|
--- 6254,6262 ----
|
||||||
|
A don't give the "ATTENTION" message when an existing swap file
|
||||||
|
is found.
|
||||||
|
I don't give the intro message when starting Vim |:intro|.
|
||||||
|
+ c don't give |ins-completion-menu| messages. For example,
|
||||||
|
+ "-- XXX completion (YYY)", "match 1 of 2", "The only match",
|
||||||
|
+ "Pattern not found", "Back at original", etc.
|
||||||
|
|
||||||
|
This gives you the opportunity to avoid that a change between buffers
|
||||||
|
requires you to hit <Enter>, but still gives as useful a message as
|
||||||
|
*** ../vim-7.4.313/src/edit.c 2014-04-29 14:44:31.515875819 +0200
|
||||||
|
--- src/edit.c 2014-05-28 21:33:57.588325545 +0200
|
||||||
|
***************
|
||||||
|
*** 3854,3860 ****
|
||||||
|
ins_compl_free();
|
||||||
|
compl_started = FALSE;
|
||||||
|
compl_matches = 0;
|
||||||
|
! msg_clr_cmdline(); /* necessary for "noshowmode" */
|
||||||
|
ctrl_x_mode = 0;
|
||||||
|
compl_enter_selects = FALSE;
|
||||||
|
if (edit_submode != NULL)
|
||||||
|
--- 3854,3861 ----
|
||||||
|
ins_compl_free();
|
||||||
|
compl_started = FALSE;
|
||||||
|
compl_matches = 0;
|
||||||
|
! if (!shortmess(SHM_COMPLETIONMENU))
|
||||||
|
! msg_clr_cmdline(); /* necessary for "noshowmode" */
|
||||||
|
ctrl_x_mode = 0;
|
||||||
|
compl_enter_selects = FALSE;
|
||||||
|
if (edit_submode != NULL)
|
||||||
|
***************
|
||||||
|
*** 5285,5291 ****
|
||||||
|
{
|
||||||
|
ctrl_x_mode = 0;
|
||||||
|
edit_submode = NULL;
|
||||||
|
! msg_clr_cmdline();
|
||||||
|
return FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
|
--- 5286,5293 ----
|
||||||
|
{
|
||||||
|
ctrl_x_mode = 0;
|
||||||
|
edit_submode = NULL;
|
||||||
|
! if (!shortmess(SHM_COMPLETIONMENU))
|
||||||
|
! msg_clr_cmdline();
|
||||||
|
return FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 5544,5558 ****
|
||||||
|
|
||||||
|
/* Show a message about what (completion) mode we're in. */
|
||||||
|
showmode();
|
||||||
|
! if (edit_submode_extra != NULL)
|
||||||
|
{
|
||||||
|
! if (!p_smd)
|
||||||
|
! msg_attr(edit_submode_extra,
|
||||||
|
! edit_submode_highl < HLF_COUNT
|
||||||
|
! ? hl_attr(edit_submode_highl) : 0);
|
||||||
|
}
|
||||||
|
- else
|
||||||
|
- msg_clr_cmdline(); /* necessary for "noshowmode" */
|
||||||
|
|
||||||
|
/* Show the popup menu, unless we got interrupted. */
|
||||||
|
if (!compl_interrupted)
|
||||||
|
--- 5546,5563 ----
|
||||||
|
|
||||||
|
/* Show a message about what (completion) mode we're in. */
|
||||||
|
showmode();
|
||||||
|
! if (!shortmess(SHM_COMPLETIONMENU))
|
||||||
|
{
|
||||||
|
! if (edit_submode_extra != NULL)
|
||||||
|
! {
|
||||||
|
! if (!p_smd)
|
||||||
|
! msg_attr(edit_submode_extra,
|
||||||
|
! edit_submode_highl < HLF_COUNT
|
||||||
|
! ? hl_attr(edit_submode_highl) : 0);
|
||||||
|
! }
|
||||||
|
! else
|
||||||
|
! msg_clr_cmdline(); /* necessary for "noshowmode" */
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Show the popup menu, unless we got interrupted. */
|
||||||
|
if (!compl_interrupted)
|
||||||
|
*** ../vim-7.4.313/src/option.h 2014-03-23 15:12:29.943264337 +0100
|
||||||
|
--- src/option.h 2014-05-28 21:34:25.244325787 +0200
|
||||||
|
***************
|
||||||
|
*** 212,218 ****
|
||||||
|
#define SHM_SEARCH 's' /* no search hit bottom messages */
|
||||||
|
#define SHM_ATTENTION 'A' /* no ATTENTION messages */
|
||||||
|
#define SHM_INTRO 'I' /* intro messages */
|
||||||
|
! #define SHM_ALL "rmfixlnwaWtToOsAI" /* all possible flags for 'shm' */
|
||||||
|
|
||||||
|
/* characters for p_go: */
|
||||||
|
#define GO_ASEL 'a' /* autoselect */
|
||||||
|
--- 212,219 ----
|
||||||
|
#define SHM_SEARCH 's' /* no search hit bottom messages */
|
||||||
|
#define SHM_ATTENTION 'A' /* no ATTENTION messages */
|
||||||
|
#define SHM_INTRO 'I' /* intro messages */
|
||||||
|
! #define SHM_COMPLETIONMENU 'c' /* completion menu messages */
|
||||||
|
! #define SHM_ALL "rmfixlnwaWtToOsAIc" /* all possible flags for 'shm' */
|
||||||
|
|
||||||
|
/* characters for p_go: */
|
||||||
|
#define GO_ASEL 'a' /* autoselect */
|
||||||
|
*** ../vim-7.4.313/src/screen.c 2014-05-22 16:05:16.338382204 +0200
|
||||||
|
--- src/screen.c 2014-05-28 20:53:20.488304211 +0200
|
||||||
|
***************
|
||||||
|
*** 42,48 ****
|
||||||
|
*
|
||||||
|
* The part of the buffer that is displayed in a window is set with:
|
||||||
|
* - w_topline (first buffer line in window)
|
||||||
|
! * - w_topfill (filler line above the first line)
|
||||||
|
* - w_leftcol (leftmost window cell in window),
|
||||||
|
* - w_skipcol (skipped window cells of first line)
|
||||||
|
*
|
||||||
|
--- 42,48 ----
|
||||||
|
*
|
||||||
|
* The part of the buffer that is displayed in a window is set with:
|
||||||
|
* - w_topline (first buffer line in window)
|
||||||
|
! * - w_topfill (filler lines above the first line)
|
||||||
|
* - w_leftcol (leftmost window cell in window),
|
||||||
|
* - w_skipcol (skipped window cells of first line)
|
||||||
|
*
|
||||||
|
***************
|
||||||
|
*** 9683,9689 ****
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#ifdef FEAT_INS_EXPAND
|
||||||
|
! if (edit_submode != NULL) /* CTRL-X in Insert mode */
|
||||||
|
{
|
||||||
|
/* These messages can get long, avoid a wrap in a narrow
|
||||||
|
* window. Prefer showing edit_submode_extra. */
|
||||||
|
--- 9683,9690 ----
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#ifdef FEAT_INS_EXPAND
|
||||||
|
! /* CTRL-X in Insert mode */
|
||||||
|
! if (edit_submode != NULL && !shortmess(SHM_COMPLETIONMENU))
|
||||||
|
{
|
||||||
|
/* These messages can get long, avoid a wrap in a narrow
|
||||||
|
* window. Prefer showing edit_submode_extra. */
|
||||||
|
*** ../vim-7.4.313/src/version.c 2014-05-28 20:31:37.504292805 +0200
|
||||||
|
--- src/version.c 2014-05-28 20:54:27.664304800 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 314,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
227. You sleep next to your monitor. Or on top of it.
|
||||||
|
|
||||||
|
/// 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 ///
|
229
7.4.315
Normal file
229
7.4.315
Normal file
@ -0,0 +1,229 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.315
|
||||||
|
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.4.315 (after 7.4.309)
|
||||||
|
Problem: Fixes for computation of topline not tested.
|
||||||
|
Solution: Add test. (Hirohito Higashi)
|
||||||
|
Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
|
||||||
|
src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
|
||||||
|
src/testdir/Make_vms.mms, src/testdir/Makefile,
|
||||||
|
src/testdir/test107.in, src/testdir/test107.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.314/src/testdir/Make_amiga.mak 2014-04-29 12:15:22.852032651 +0200
|
||||||
|
--- src/testdir/Make_amiga.mak 2014-05-28 13:13:32.108062709 +0200
|
||||||
|
***************
|
||||||
|
*** 35,41 ****
|
||||||
|
test89.out test90.out test91.out test92.out test93.out \
|
||||||
|
test94.out test95.out test96.out test97.out test98.out \
|
||||||
|
test99.out test100.out test101.out test102.out test103.out \
|
||||||
|
! test104.out test105.out test106.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
--- 35,41 ----
|
||||||
|
test89.out test90.out test91.out test92.out test93.out \
|
||||||
|
test94.out test95.out test96.out test97.out test98.out \
|
||||||
|
test99.out test100.out test101.out test102.out test103.out \
|
||||||
|
! test104.out test105.out test106.out test107.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
***************
|
||||||
|
*** 161,166 ****
|
||||||
|
--- 161,167 ----
|
||||||
|
test104.out: test104.in
|
||||||
|
test105.out: test105.in
|
||||||
|
test106.out: test106.in
|
||||||
|
+ test107.out: test107.in
|
||||||
|
test_autoformat_join.out: test_autoformat_join.in
|
||||||
|
test_eval.out: test_eval.in
|
||||||
|
test_options.out: test_options.in
|
||||||
|
*** ../vim-7.4.314/src/testdir/Make_dos.mak 2014-04-29 12:15:22.852032651 +0200
|
||||||
|
--- src/testdir/Make_dos.mak 2014-05-28 13:13:44.344062816 +0200
|
||||||
|
***************
|
||||||
|
*** 34,40 ****
|
||||||
|
test89.out test90.out test91.out test92.out test93.out \
|
||||||
|
test94.out test95.out test96.out test98.out test99.out \
|
||||||
|
test100.out test101.out test102.out test103.out test104.out \
|
||||||
|
! test105.out test106.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
--- 34,40 ----
|
||||||
|
test89.out test90.out test91.out test92.out test93.out \
|
||||||
|
test94.out test95.out test96.out test98.out test99.out \
|
||||||
|
test100.out test101.out test102.out test103.out test104.out \
|
||||||
|
! test105.out test106.out test107.out\
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
*** ../vim-7.4.314/src/testdir/Make_ming.mak 2014-04-29 12:15:22.852032651 +0200
|
||||||
|
--- src/testdir/Make_ming.mak 2014-05-28 13:13:52.656062889 +0200
|
||||||
|
***************
|
||||||
|
*** 54,60 ****
|
||||||
|
test89.out test90.out test91.out test92.out test93.out \
|
||||||
|
test94.out test95.out test96.out test98.out test99.out \
|
||||||
|
test100.out test101.out test102.out test103.out test104.out \
|
||||||
|
! test105.out test106.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
--- 54,60 ----
|
||||||
|
test89.out test90.out test91.out test92.out test93.out \
|
||||||
|
test94.out test95.out test96.out test98.out test99.out \
|
||||||
|
test100.out test101.out test102.out test103.out test104.out \
|
||||||
|
! test105.out test106.out test107.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
*** ../vim-7.4.314/src/testdir/Make_os2.mak 2014-04-29 12:15:22.852032651 +0200
|
||||||
|
--- src/testdir/Make_os2.mak 2014-05-28 13:14:03.616062985 +0200
|
||||||
|
***************
|
||||||
|
*** 36,42 ****
|
||||||
|
test89.out test90.out test91.out test92.out test93.out \
|
||||||
|
test94.out test95.out test96.out test98.out test99.out \
|
||||||
|
test100.out test101.out test102.out test103.out test104.out \
|
||||||
|
! test105.out test106.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
--- 36,42 ----
|
||||||
|
test89.out test90.out test91.out test92.out test93.out \
|
||||||
|
test94.out test95.out test96.out test98.out test99.out \
|
||||||
|
test100.out test101.out test102.out test103.out test104.out \
|
||||||
|
! test105.out test106.out test107.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
*** ../vim-7.4.314/src/testdir/Make_vms.mms 2014-04-29 12:15:22.852032651 +0200
|
||||||
|
--- src/testdir/Make_vms.mms 2014-05-28 13:14:09.724063038 +0200
|
||||||
|
***************
|
||||||
|
*** 4,10 ****
|
||||||
|
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||||
|
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||||
|
#
|
||||||
|
! # Last change: 2014 Mar 12
|
||||||
|
#
|
||||||
|
# This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
|
||||||
|
# Edit the lines in the Configuration section below to select.
|
||||||
|
--- 4,10 ----
|
||||||
|
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||||
|
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||||
|
#
|
||||||
|
! # Last change: 2014 May 28
|
||||||
|
#
|
||||||
|
# This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
|
||||||
|
# Edit the lines in the Configuration section below to select.
|
||||||
|
***************
|
||||||
|
*** 95,101 ****
|
||||||
|
test90.out test91.out test92.out test93.out test94.out \
|
||||||
|
test95.out test96.out test98.out test99.out \
|
||||||
|
test100.out test101.out test103.out test104.out \
|
||||||
|
! test105.out test106.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
--- 95,101 ----
|
||||||
|
test90.out test91.out test92.out test93.out test94.out \
|
||||||
|
test95.out test96.out test98.out test99.out \
|
||||||
|
test100.out test101.out test103.out test104.out \
|
||||||
|
! test105.out test106.out test107.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
*** ../vim-7.4.314/src/testdir/Makefile 2014-05-22 13:12:25.650592983 +0200
|
||||||
|
--- src/testdir/Makefile 2014-05-28 13:14:28.688063204 +0200
|
||||||
|
***************
|
||||||
|
*** 32,38 ****
|
||||||
|
test89.out test90.out test91.out test92.out test93.out \
|
||||||
|
test94.out test95.out test96.out test97.out test98.out \
|
||||||
|
test99.out test100.out test101.out test102.out test103.out \
|
||||||
|
! test104.out test105.out test106.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
--- 32,38 ----
|
||||||
|
test89.out test90.out test91.out test92.out test93.out \
|
||||||
|
test94.out test95.out test96.out test97.out test98.out \
|
||||||
|
test99.out test100.out test101.out test102.out test103.out \
|
||||||
|
! test104.out test105.out test106.out test107.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
*** ../vim-7.4.314/src/testdir/test107.in 2014-05-29 11:46:48.728773486 +0200
|
||||||
|
--- src/testdir/test107.in 2014-05-29 11:40:20.096770084 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,38 ----
|
||||||
|
+ Tests for adjusting window and contents vim: set ft=vim :
|
||||||
|
+
|
||||||
|
+ STARTTEST
|
||||||
|
+ :so small.vim
|
||||||
|
+ :new
|
||||||
|
+ :call setline(1, range(1,256))
|
||||||
|
+ :let r=[]
|
||||||
|
+ :func! GetScreenStr(row)
|
||||||
|
+ : let str = ""
|
||||||
|
+ : for c in range(1,3)
|
||||||
|
+ : let str .= nr2char(screenchar(a:row, c))
|
||||||
|
+ : endfor
|
||||||
|
+ : return str
|
||||||
|
+ :endfunc
|
||||||
|
+ :
|
||||||
|
+ :exe ":norm! \<C-W>t\<C-W>=1Gzt\<C-W>w\<C-W>+"
|
||||||
|
+ :let s3=GetScreenStr(1)
|
||||||
|
+ :wincmd p
|
||||||
|
+ :call add(r, [line("w0"), s3])
|
||||||
|
+ :
|
||||||
|
+ :exe ":norm! \<C-W>t\<C-W>=50Gzt\<C-W>w\<C-W>+"
|
||||||
|
+ :let s3=GetScreenStr(1)
|
||||||
|
+ :wincmd p
|
||||||
|
+ :call add(r, [line("w0"), s3])
|
||||||
|
+ :
|
||||||
|
+ :exe ":norm! \<C-W>t\<C-W>=59Gzt\<C-W>w\<C-W>+"
|
||||||
|
+ :let s3=GetScreenStr(1)
|
||||||
|
+ ::wincmd p
|
||||||
|
+ :call add(r, [line("w0"), s3])
|
||||||
|
+ :
|
||||||
|
+ :bwipeout!
|
||||||
|
+ :$put=r
|
||||||
|
+ :call garbagecollect(1)
|
||||||
|
+ :"
|
||||||
|
+ :/^start:/,$wq! test.out
|
||||||
|
+ ENDTEST
|
||||||
|
+
|
||||||
|
+ start:
|
||||||
|
*** ../vim-7.4.314/src/testdir/test107.ok 2014-05-29 11:46:48.736773486 +0200
|
||||||
|
--- src/testdir/test107.ok 2014-05-29 11:40:20.096770084 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,4 ----
|
||||||
|
+ start:
|
||||||
|
+ [1, '1 ']
|
||||||
|
+ [50, '50 ']
|
||||||
|
+ [59, '59 ']
|
||||||
|
*** ../vim-7.4.314/src/version.c 2014-05-28 21:40:47.092329130 +0200
|
||||||
|
--- src/version.c 2014-05-29 11:41:47.640770850 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 315,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
229. You spend so much time thinking what to add on this list.
|
||||||
|
|
||||||
|
/// 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.4.316
Normal file
52
7.4.316
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.316
|
||||||
|
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.4.316
|
||||||
|
Problem: Warning from 64-bit compiler.
|
||||||
|
Solution: Add type cast. (Mike Williams)
|
||||||
|
Files: src/ex_getln.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.315/src/ex_getln.c 2014-05-07 18:35:25.665216052 +0200
|
||||||
|
--- src/ex_getln.c 2014-05-29 14:32:53.584860716 +0200
|
||||||
|
***************
|
||||||
|
*** 5202,5208 ****
|
||||||
|
for (i = 0; i < num_p; ++i)
|
||||||
|
{
|
||||||
|
((char_u **)ga->ga_data)[ga->ga_len] =
|
||||||
|
! vim_strnsave(p[i], STRLEN(p[i]));
|
||||||
|
++ga->ga_len;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
--- 5202,5208 ----
|
||||||
|
for (i = 0; i < num_p; ++i)
|
||||||
|
{
|
||||||
|
((char_u **)ga->ga_data)[ga->ga_len] =
|
||||||
|
! vim_strnsave(p[i], (int)STRLEN(p[i]));
|
||||||
|
++ga->ga_len;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*** ../vim-7.4.315/src/version.c 2014-05-29 11:47:19.808773758 +0200
|
||||||
|
--- src/version.c 2014-05-29 14:33:29.476861030 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 316,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
232. You start conversations with, "Have you gotten an ISDN line?"
|
||||||
|
|
||||||
|
/// 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.4.317
Normal file
57
7.4.317
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.317
|
||||||
|
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.4.317
|
||||||
|
Problem: Crash when starting gvim. Issue 230.
|
||||||
|
Solution: Check for a pointer to be NULL. (Christian Brabandt)
|
||||||
|
Files: src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.316/src/window.c 2014-05-28 13:42:59.884078184 +0200
|
||||||
|
--- src/window.c 2014-06-12 11:36:53.619441640 +0200
|
||||||
|
***************
|
||||||
|
*** 4721,4728 ****
|
||||||
|
win_free_lsize(wp)
|
||||||
|
win_T *wp;
|
||||||
|
{
|
||||||
|
! vim_free(wp->w_lines);
|
||||||
|
! wp->w_lines = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
--- 4721,4732 ----
|
||||||
|
win_free_lsize(wp)
|
||||||
|
win_T *wp;
|
||||||
|
{
|
||||||
|
! /* TODO: why would wp be NULL here? */
|
||||||
|
! if (wp != NULL)
|
||||||
|
! {
|
||||||
|
! vim_free(wp->w_lines);
|
||||||
|
! wp->w_lines = NULL;
|
||||||
|
! }
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
*** ../vim-7.4.316/src/version.c 2014-05-29 14:36:26.156862577 +0200
|
||||||
|
--- src/version.c 2014-06-12 11:37:37.907443315 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 317,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
press CTRL-ALT-DEL for more information
|
||||||
|
|
||||||
|
/// 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.4.318
Normal file
52
7.4.318
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.318
|
||||||
|
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.4.318
|
||||||
|
Problem: Check for whether a highlight group has settings ignores fg and bg
|
||||||
|
color settings.
|
||||||
|
Solution: Also check cterm and GUI color settings. (Christian Brabandt)
|
||||||
|
Files: src/syntax.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.317/src/syntax.c 2014-03-23 15:12:29.939264336 +0100
|
||||||
|
--- src/syntax.c 2014-06-12 12:16:13.851530931 +0200
|
||||||
|
***************
|
||||||
|
*** 8043,8050 ****
|
||||||
|
--- 8043,8056 ----
|
||||||
|
{
|
||||||
|
return ( HL_TABLE()[idx].sg_term_attr != 0
|
||||||
|
|| HL_TABLE()[idx].sg_cterm_attr != 0
|
||||||
|
+ || HL_TABLE()[idx].sg_cterm_fg != 0
|
||||||
|
+ || HL_TABLE()[idx].sg_cterm_bg != 0
|
||||||
|
#ifdef FEAT_GUI
|
||||||
|
|| HL_TABLE()[idx].sg_gui_attr != 0
|
||||||
|
+ || HL_TABLE()[idx].sg_gui_fg_name != NULL
|
||||||
|
+ || HL_TABLE()[idx].sg_gui_bg_name != NULL
|
||||||
|
+ || HL_TABLE()[idx].sg_gui_sp_name != NULL
|
||||||
|
+ || HL_TABLE()[idx].sg_font_name != NUL
|
||||||
|
#endif
|
||||||
|
|| (check_link && (HL_TABLE()[idx].sg_set & SG_LINK)));
|
||||||
|
}
|
||||||
|
*** ../vim-7.4.317/src/version.c 2014-06-12 11:49:42.219470717 +0200
|
||||||
|
--- src/version.c 2014-06-12 12:17:25.607533645 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 318,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
The software said it requires Windows 95 or better, so I installed Linux.
|
||||||
|
|
||||||
|
/// 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.4.319
Normal file
55
7.4.319
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.319
|
||||||
|
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.4.319
|
||||||
|
Problem: Crash when putting zero bytes on the clipboard.
|
||||||
|
Solution: Do not support the utf8_atom target when not using an Unicode
|
||||||
|
encoding. (Naofumi Honda)
|
||||||
|
Files: src/ui.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.318/src/ui.c 2014-03-23 15:12:29.943264337 +0100
|
||||||
|
--- src/ui.c 2014-06-12 13:25:21.791687853 +0200
|
||||||
|
***************
|
||||||
|
*** 2324,2330 ****
|
||||||
|
if ( *target != XA_STRING
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
&& *target != vimenc_atom
|
||||||
|
! && *target != utf8_atom
|
||||||
|
#endif
|
||||||
|
&& *target != vim_atom
|
||||||
|
&& *target != text_atom
|
||||||
|
--- 2324,2330 ----
|
||||||
|
if ( *target != XA_STRING
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
&& *target != vimenc_atom
|
||||||
|
! && (*target != utf8_atom || !enc_utf8)
|
||||||
|
#endif
|
||||||
|
&& *target != vim_atom
|
||||||
|
&& *target != text_atom
|
||||||
|
*** ../vim-7.4.318/src/version.c 2014-06-12 12:20:50.195541385 +0200
|
||||||
|
--- src/version.c 2014-06-12 13:26:09.147689645 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 319,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
FIRST HEAD: Oh! quick! get the sword out I want to cut his head off.
|
||||||
|
THIRD HEAD: Oh, cut your own head off.
|
||||||
|
SECOND HEAD: Yes - do us all a favour.
|
||||||
|
"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 ///
|
143
7.4.320
Normal file
143
7.4.320
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.320
|
||||||
|
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.4.320
|
||||||
|
Problem: Possible crash when an BufLeave autocommand deletes the buffer.
|
||||||
|
Solution: Check for the window pointer being valid. Postpone freeing the
|
||||||
|
window until autocommands are done. (Yasuhiro Matsumoto)
|
||||||
|
Files: src/buffer.c, src/fileio.c, src/globals.h, src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.319/src/buffer.c 2014-05-07 16:35:05.029152844 +0200
|
||||||
|
--- src/buffer.c 2014-06-12 13:47:17.799737639 +0200
|
||||||
|
***************
|
||||||
|
*** 371,377 ****
|
||||||
|
unload_buf = TRUE;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
! if (win != NULL)
|
||||||
|
{
|
||||||
|
/* Set b_last_cursor when closing the last window for the buffer.
|
||||||
|
* Remember the last cursor position and window options of the buffer.
|
||||||
|
--- 371,381 ----
|
||||||
|
unload_buf = TRUE;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
! if (win != NULL
|
||||||
|
! #ifdef FEAT_WINDOWS
|
||||||
|
! && win_valid(win) /* in case autocommands closed the window */
|
||||||
|
! #endif
|
||||||
|
! )
|
||||||
|
{
|
||||||
|
/* Set b_last_cursor when closing the last window for the buffer.
|
||||||
|
* Remember the last cursor position and window options of the buffer.
|
||||||
|
*** ../vim-7.4.319/src/fileio.c 2014-05-02 15:46:10.731268318 +0200
|
||||||
|
--- src/fileio.c 2014-06-12 13:53:33.207751842 +0200
|
||||||
|
***************
|
||||||
|
*** 9549,9555 ****
|
||||||
|
|
||||||
|
/*
|
||||||
|
* When stopping to execute autocommands, restore the search patterns and
|
||||||
|
! * the redo buffer. Free buffers in the au_pending_free_buf list.
|
||||||
|
*/
|
||||||
|
if (!autocmd_busy)
|
||||||
|
{
|
||||||
|
--- 9549,9556 ----
|
||||||
|
|
||||||
|
/*
|
||||||
|
* When stopping to execute autocommands, restore the search patterns and
|
||||||
|
! * the redo buffer. Free any buffers in the au_pending_free_buf list and
|
||||||
|
! * free any windows in the au_pending_free_win list.
|
||||||
|
*/
|
||||||
|
if (!autocmd_busy)
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 9562,9567 ****
|
||||||
|
--- 9563,9574 ----
|
||||||
|
vim_free(au_pending_free_buf);
|
||||||
|
au_pending_free_buf = b;
|
||||||
|
}
|
||||||
|
+ while (au_pending_free_win != NULL)
|
||||||
|
+ {
|
||||||
|
+ win_T *w = au_pending_free_win->w_next;
|
||||||
|
+ vim_free(au_pending_free_win);
|
||||||
|
+ au_pending_free_win = w;
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
*** ../vim-7.4.319/src/globals.h 2014-05-28 18:22:37.876225054 +0200
|
||||||
|
--- src/globals.h 2014-06-12 13:54:29.163753959 +0200
|
||||||
|
***************
|
||||||
|
*** 387,396 ****
|
||||||
|
* which one is preferred, au_new_curbuf is set to it */
|
||||||
|
EXTERN buf_T *au_new_curbuf INIT(= NULL);
|
||||||
|
|
||||||
|
! /* When deleting the buffer and autocmd_busy is TRUE, do not free the buffer
|
||||||
|
! * but link it in the list starting with au_pending_free_buf, using b_next.
|
||||||
|
! * Free the buffer when autocmd_busy is set to FALSE. */
|
||||||
|
EXTERN buf_T *au_pending_free_buf INIT(= NULL);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef FEAT_MOUSE
|
||||||
|
--- 387,398 ----
|
||||||
|
* which one is preferred, au_new_curbuf is set to it */
|
||||||
|
EXTERN buf_T *au_new_curbuf INIT(= NULL);
|
||||||
|
|
||||||
|
! /* When deleting a buffer/window and autocmd_busy is TRUE, do not free the
|
||||||
|
! * buffer/window. but link it in the list starting with
|
||||||
|
! * au_pending_free_buf/ap_pending_free_win, using b_next/w_next.
|
||||||
|
! * Free the buffer/window when autocmd_busy is being set to FALSE. */
|
||||||
|
EXTERN buf_T *au_pending_free_buf INIT(= NULL);
|
||||||
|
+ EXTERN win_T *au_pending_free_win INIT(= NULL);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef FEAT_MOUSE
|
||||||
|
*** ../vim-7.4.319/src/window.c 2014-06-12 11:49:42.219470717 +0200
|
||||||
|
--- src/window.c 2014-06-12 13:51:54.939748124 +0200
|
||||||
|
***************
|
||||||
|
*** 4597,4603 ****
|
||||||
|
if (wp != aucmd_win)
|
||||||
|
#endif
|
||||||
|
win_remove(wp, tp);
|
||||||
|
! vim_free(wp);
|
||||||
|
|
||||||
|
#ifdef FEAT_AUTOCMD
|
||||||
|
unblock_autocmds();
|
||||||
|
--- 4597,4609 ----
|
||||||
|
if (wp != aucmd_win)
|
||||||
|
#endif
|
||||||
|
win_remove(wp, tp);
|
||||||
|
! if (autocmd_busy)
|
||||||
|
! {
|
||||||
|
! wp->w_next = au_pending_free_win;
|
||||||
|
! au_pending_free_win = wp;
|
||||||
|
! }
|
||||||
|
! else
|
||||||
|
! vim_free(wp);
|
||||||
|
|
||||||
|
#ifdef FEAT_AUTOCMD
|
||||||
|
unblock_autocmds();
|
||||||
|
*** ../vim-7.4.319/src/version.c 2014-06-12 13:28:26.771694851 +0200
|
||||||
|
--- src/version.c 2014-06-12 13:40:23.507721966 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 320,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Life would be so much easier if we could just look at the source code.
|
||||||
|
|
||||||
|
/// 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 ///
|
71
7.4.321
Normal file
71
7.4.321
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.321
|
||||||
|
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.4.321
|
||||||
|
Problem: Can't build with strawberry perl 5.20 + mingw-w64-4.9.0.
|
||||||
|
Solution: Define save_strlen. (Ken Takata)
|
||||||
|
Files: src/if_perl.xs
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.320/src/if_perl.xs 2014-03-12 17:08:01.508807656 +0100
|
||||||
|
--- src/if_perl.xs 2014-06-12 16:02:25.584044368 +0200
|
||||||
|
***************
|
||||||
|
*** 191,196 ****
|
||||||
|
--- 191,199 ----
|
||||||
|
# define Perl_pop_scope dll_Perl_pop_scope
|
||||||
|
# define Perl_push_scope dll_Perl_push_scope
|
||||||
|
# define Perl_save_int dll_Perl_save_int
|
||||||
|
+ # if (PERL_REVISION == 5) && (PERL_VERSION >= 20)
|
||||||
|
+ # define Perl_save_strlen dll_Perl_save_strlen
|
||||||
|
+ # endif
|
||||||
|
# define Perl_stack_grow dll_Perl_stack_grow
|
||||||
|
# define Perl_set_context dll_Perl_set_context
|
||||||
|
# if (PERL_REVISION == 5) && (PERL_VERSION >= 14)
|
||||||
|
***************
|
||||||
|
*** 311,316 ****
|
||||||
|
--- 314,322 ----
|
||||||
|
static void (*Perl_pop_scope)(pTHX);
|
||||||
|
static void (*Perl_push_scope)(pTHX);
|
||||||
|
static void (*Perl_save_int)(pTHX_ int*);
|
||||||
|
+ #if (PERL_REVISION == 5) && (PERL_VERSION >= 20)
|
||||||
|
+ static void (*Perl_save_strlen)(pTHX_ STRLEN* ptr);
|
||||||
|
+ #endif
|
||||||
|
static SV** (*Perl_stack_grow)(pTHX_ SV**, SV**p, int);
|
||||||
|
static SV** (*Perl_set_context)(void*);
|
||||||
|
#if (PERL_REVISION == 5) && (PERL_VERSION >= 14)
|
||||||
|
***************
|
||||||
|
*** 440,445 ****
|
||||||
|
--- 446,454 ----
|
||||||
|
{"Perl_pop_scope", (PERL_PROC*)&Perl_pop_scope},
|
||||||
|
{"Perl_push_scope", (PERL_PROC*)&Perl_push_scope},
|
||||||
|
{"Perl_save_int", (PERL_PROC*)&Perl_save_int},
|
||||||
|
+ #if (PERL_REVISION == 5) && (PERL_VERSION >= 20)
|
||||||
|
+ {"Perl_save_strlen", (PERL_PROC*)&Perl_save_strlen},
|
||||||
|
+ #endif
|
||||||
|
{"Perl_stack_grow", (PERL_PROC*)&Perl_stack_grow},
|
||||||
|
{"Perl_set_context", (PERL_PROC*)&Perl_set_context},
|
||||||
|
#if (PERL_REVISION == 5) && (PERL_VERSION >= 14)
|
||||||
|
*** ../vim-7.4.320/src/version.c 2014-06-12 14:01:27.583769788 +0200
|
||||||
|
--- src/version.c 2014-06-12 16:02:37.156044806 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 321,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Microsoft's definition of a boolean: TRUE, FALSE, MAYBE
|
||||||
|
"Embrace and extend"...?
|
||||||
|
|
||||||
|
/// 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 ///
|
92
7.4.322
Normal file
92
7.4.322
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.322
|
||||||
|
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.4.322
|
||||||
|
Problem: Using "msgfmt" is hard coded, cannot use "gmsgfmt".
|
||||||
|
Solution: Use the msgfmt command found by configure. (Danek Duvall)
|
||||||
|
Files: src/config.mk.in, src/po/Makefile
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.321/src/config.mk.in 2010-11-03 22:26:24.000000000 +0100
|
||||||
|
--- src/config.mk.in 2014-06-12 17:41:12.892268607 +0200
|
||||||
|
***************
|
||||||
|
*** 164,169 ****
|
||||||
|
--- 164,171 ----
|
||||||
|
### If the *.po files are to be translated to *.mo files.
|
||||||
|
MAKEMO = @MAKEMO@
|
||||||
|
|
||||||
|
+ MSGFMT = @MSGFMT@
|
||||||
|
+
|
||||||
|
# Make sure that "make first" will run "make all" once configure has done its
|
||||||
|
# work. This is needed when using the Makefile in the top directory.
|
||||||
|
first: all
|
||||||
|
*** ../vim-7.4.321/src/po/Makefile 2013-06-23 13:26:12.000000000 +0200
|
||||||
|
--- src/po/Makefile 2014-06-12 17:45:19.116277922 +0200
|
||||||
|
***************
|
||||||
|
*** 1,5 ****
|
||||||
|
--- 1,8 ----
|
||||||
|
# Makefile for the Vim message translations.
|
||||||
|
|
||||||
|
+ # Include stuff found by configure.
|
||||||
|
+ include ../auto/config.mk
|
||||||
|
+
|
||||||
|
# TODO make this configurable
|
||||||
|
# Note: ja.sjis, *.cp1250 and zh_CN.cp936 are only for MS-Windows, they are
|
||||||
|
# not installed on Unix
|
||||||
|
***************
|
||||||
|
*** 133,139 ****
|
||||||
|
# tools 0.10.37, which use a slightly different .po file format that is not
|
||||||
|
# compatible with Solaris (and old gettext implementations) unless these are
|
||||||
|
# set. gettext 0.10.36 will not work!
|
||||||
|
! MSGFMT = OLD_PO_FILE_INPUT=yes msgfmt -v
|
||||||
|
XGETTEXT = OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes xgettext
|
||||||
|
MSGMERGE = OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes msgmerge
|
||||||
|
|
||||||
|
--- 136,142 ----
|
||||||
|
# tools 0.10.37, which use a slightly different .po file format that is not
|
||||||
|
# compatible with Solaris (and old gettext implementations) unless these are
|
||||||
|
# set. gettext 0.10.36 will not work!
|
||||||
|
! MSGFMTCMD = OLD_PO_FILE_INPUT=yes $(MSGFMT) -v
|
||||||
|
XGETTEXT = OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes xgettext
|
||||||
|
MSGMERGE = OLD_PO_FILE_INPUT=yes OLD_PO_FILE_OUTPUT=yes msgmerge
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 142,148 ****
|
||||||
|
.PHONY: all install uninstall prefixcheck converted check clean checkclean distclean update-po $(LANGUAGES) $(CONVERTED)
|
||||||
|
|
||||||
|
.po.mo:
|
||||||
|
! $(MSGFMT) -o $@ $<
|
||||||
|
|
||||||
|
.po.ck:
|
||||||
|
$(VIM) -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq $<
|
||||||
|
--- 145,151 ----
|
||||||
|
.PHONY: all install uninstall prefixcheck converted check clean checkclean distclean update-po $(LANGUAGES) $(CONVERTED)
|
||||||
|
|
||||||
|
.po.mo:
|
||||||
|
! $(MSGFMTCMD) -o $@ $<
|
||||||
|
|
||||||
|
.po.ck:
|
||||||
|
$(VIM) -u NONE -e -X -S check.vim -c "if error == 0 | q | endif" -c cq $<
|
||||||
|
*** ../vim-7.4.321/src/version.c 2014-06-12 16:03:24.268046589 +0200
|
||||||
|
--- src/version.c 2014-06-12 17:42:27.584271433 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 322,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
If I tell you "you have a beautiful body", would you hold it against me?
|
||||||
|
|
||||||
|
/// 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 ///
|
96
7.4.323
Normal file
96
7.4.323
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.323
|
||||||
|
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.4.323
|
||||||
|
Problem: Substitute() with zero width pattern breaks multi-byte character.
|
||||||
|
Solution: Take multi-byte character size into account. (Yukihiro Nakadaira)
|
||||||
|
Files: src/eval.c src/testdir/test69.in, src/testdir/test69.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.322/src/eval.c 2014-05-28 20:31:37.496292805 +0200
|
||||||
|
--- src/eval.c 2014-06-12 18:34:22.928389291 +0200
|
||||||
|
***************
|
||||||
|
*** 24848,24855 ****
|
||||||
|
if (zero_width == regmatch.startp[0])
|
||||||
|
{
|
||||||
|
/* avoid getting stuck on a match with an empty string */
|
||||||
|
! *((char_u *)ga.ga_data + ga.ga_len) = *tail++;
|
||||||
|
! ++ga.ga_len;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
zero_width = regmatch.startp[0];
|
||||||
|
--- 24848,24858 ----
|
||||||
|
if (zero_width == regmatch.startp[0])
|
||||||
|
{
|
||||||
|
/* avoid getting stuck on a match with an empty string */
|
||||||
|
! i = MB_PTR2LEN(tail);
|
||||||
|
! mch_memmove((char_u *)ga.ga_data + ga.ga_len, tail,
|
||||||
|
! (size_t)i);
|
||||||
|
! ga.ga_len += i;
|
||||||
|
! tail += i;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
zero_width = regmatch.startp[0];
|
||||||
|
*** ../vim-7.4.322/src/testdir/test69.in 2014-02-22 23:49:30.268896843 +0100
|
||||||
|
--- src/testdir/test69.in 2014-06-12 18:32:43.108385514 +0200
|
||||||
|
***************
|
||||||
|
*** 180,185 ****
|
||||||
|
--- 180,192 ----
|
||||||
|
byteidxcomp
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
+ /^substitute
|
||||||
|
+ :let y = substitute('123', '\zs', 'a', 'g') | put =y
|
||||||
|
+ ENDTEST
|
||||||
|
+
|
||||||
|
+ substitute
|
||||||
|
+
|
||||||
|
+ STARTTEST
|
||||||
|
:g/^STARTTEST/.,/^ENDTEST/d
|
||||||
|
:1;/^Results/,$wq! test.out
|
||||||
|
ENDTEST
|
||||||
|
*** ../vim-7.4.322/src/testdir/test69.ok 2014-02-22 23:49:30.268896843 +0100
|
||||||
|
--- src/testdir/test69.ok 2014-06-12 18:32:43.108385514 +0200
|
||||||
|
***************
|
||||||
|
*** 160,162 ****
|
||||||
|
--- 160,166 ----
|
||||||
|
[0, 1, 3, 4, -1]
|
||||||
|
[0, 1, 2, 4, 5, -1]
|
||||||
|
|
||||||
|
+
|
||||||
|
+ substitute
|
||||||
|
+ a1a2a3a
|
||||||
|
+
|
||||||
|
*** ../vim-7.4.322/src/version.c 2014-06-12 18:03:24.940319000 +0200
|
||||||
|
--- src/version.c 2014-06-12 18:32:08.356384200 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 323,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
When danger reared its ugly head,
|
||||||
|
He bravely turned his tail and fled
|
||||||
|
Yes, Brave Sir Robin turned about
|
||||||
|
And gallantly he chickened out
|
||||||
|
Bravely taking to his feet
|
||||||
|
He beat a very brave retreat
|
||||||
|
Bravest of the brave Sir Robin
|
||||||
|
Petrified of being dead
|
||||||
|
Soiled his pants then brave Sir Robin
|
||||||
|
Turned away and fled.
|
||||||
|
"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 ///
|
190
7.4.324
Normal file
190
7.4.324
Normal file
@ -0,0 +1,190 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.324
|
||||||
|
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.4.324
|
||||||
|
Problem: In Ex mode, cyrillic characters are not handled. (Stas Malavin)
|
||||||
|
Solution: Support multi-byte characters in Ex mode. (Yukihiro Nakadaira)
|
||||||
|
Files: src/ex_getln.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.323/src/ex_getln.c 2014-05-29 14:36:26.156862577 +0200
|
||||||
|
--- src/ex_getln.c 2014-06-12 19:33:10.440522741 +0200
|
||||||
|
***************
|
||||||
|
*** 2188,2193 ****
|
||||||
|
--- 2188,2194 ----
|
||||||
|
int vcol = 0;
|
||||||
|
char_u *p;
|
||||||
|
int prev_char;
|
||||||
|
+ int len;
|
||||||
|
|
||||||
|
/* Switch cursor on now. This avoids that it happens after the "\n", which
|
||||||
|
* confuses the system function that computes tabstops. */
|
||||||
|
***************
|
||||||
|
*** 2264,2270 ****
|
||||||
|
{
|
||||||
|
if (line_ga.ga_len > 0)
|
||||||
|
{
|
||||||
|
! --line_ga.ga_len;
|
||||||
|
goto redraw;
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
--- 2265,2281 ----
|
||||||
|
{
|
||||||
|
if (line_ga.ga_len > 0)
|
||||||
|
{
|
||||||
|
! #ifdef FEAT_MBYTE
|
||||||
|
! if (has_mbyte)
|
||||||
|
! {
|
||||||
|
! p = (char_u *)line_ga.ga_data;
|
||||||
|
! p[line_ga.ga_len] = NUL;
|
||||||
|
! len = (*mb_head_off)(p, p + line_ga.ga_len - 1) + 1;
|
||||||
|
! line_ga.ga_len -= len;
|
||||||
|
! }
|
||||||
|
! else
|
||||||
|
! #endif
|
||||||
|
! --line_ga.ga_len;
|
||||||
|
goto redraw;
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
***************
|
||||||
|
*** 2280,2286 ****
|
||||||
|
|
||||||
|
if (c1 == Ctrl_T)
|
||||||
|
{
|
||||||
|
! long sw = get_sw_value(curbuf);
|
||||||
|
|
||||||
|
p = (char_u *)line_ga.ga_data;
|
||||||
|
p[line_ga.ga_len] = NUL;
|
||||||
|
--- 2291,2297 ----
|
||||||
|
|
||||||
|
if (c1 == Ctrl_T)
|
||||||
|
{
|
||||||
|
! long sw = get_sw_value(curbuf);
|
||||||
|
|
||||||
|
p = (char_u *)line_ga.ga_data;
|
||||||
|
p[line_ga.ga_len] = NUL;
|
||||||
|
***************
|
||||||
|
*** 2300,2307 ****
|
||||||
|
/* redraw the line */
|
||||||
|
msg_col = startcol;
|
||||||
|
vcol = 0;
|
||||||
|
! for (p = (char_u *)line_ga.ga_data;
|
||||||
|
! p < (char_u *)line_ga.ga_data + line_ga.ga_len; ++p)
|
||||||
|
{
|
||||||
|
if (*p == TAB)
|
||||||
|
{
|
||||||
|
--- 2311,2319 ----
|
||||||
|
/* redraw the line */
|
||||||
|
msg_col = startcol;
|
||||||
|
vcol = 0;
|
||||||
|
! p = (char_u *)line_ga.ga_data;
|
||||||
|
! p[line_ga.ga_len] = NUL;
|
||||||
|
! while (p < (char_u *)line_ga.ga_data + line_ga.ga_len)
|
||||||
|
{
|
||||||
|
if (*p == TAB)
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 2309,2319 ****
|
||||||
|
{
|
||||||
|
msg_putchar(' ');
|
||||||
|
} while (++vcol % 8);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! msg_outtrans_len(p, 1);
|
||||||
|
! vcol += char2cells(*p);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
msg_clr_eos();
|
||||||
|
--- 2321,2334 ----
|
||||||
|
{
|
||||||
|
msg_putchar(' ');
|
||||||
|
} while (++vcol % 8);
|
||||||
|
+ ++p;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! len = MB_PTR2LEN(p);
|
||||||
|
! msg_outtrans_len(p, len);
|
||||||
|
! vcol += ptr2cells(p);
|
||||||
|
! p += len;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
msg_clr_eos();
|
||||||
|
***************
|
||||||
|
*** 2362,2368 ****
|
||||||
|
|
||||||
|
if (IS_SPECIAL(c1))
|
||||||
|
c1 = '?';
|
||||||
|
! ((char_u *)line_ga.ga_data)[line_ga.ga_len] = c1;
|
||||||
|
if (c1 == '\n')
|
||||||
|
msg_putchar('\n');
|
||||||
|
else if (c1 == TAB)
|
||||||
|
--- 2377,2392 ----
|
||||||
|
|
||||||
|
if (IS_SPECIAL(c1))
|
||||||
|
c1 = '?';
|
||||||
|
! #ifdef FEAT_MBYTE
|
||||||
|
! if (has_mbyte)
|
||||||
|
! len = (*mb_char2bytes)(c1,
|
||||||
|
! (char_u *)line_ga.ga_data + line_ga.ga_len);
|
||||||
|
! else
|
||||||
|
! #endif
|
||||||
|
! {
|
||||||
|
! len = 1;
|
||||||
|
! ((char_u *)line_ga.ga_data)[line_ga.ga_len] = c1;
|
||||||
|
! }
|
||||||
|
if (c1 == '\n')
|
||||||
|
msg_putchar('\n');
|
||||||
|
else if (c1 == TAB)
|
||||||
|
***************
|
||||||
|
*** 2376,2385 ****
|
||||||
|
else
|
||||||
|
{
|
||||||
|
msg_outtrans_len(
|
||||||
|
! ((char_u *)line_ga.ga_data) + line_ga.ga_len, 1);
|
||||||
|
vcol += char2cells(c1);
|
||||||
|
}
|
||||||
|
! ++line_ga.ga_len;
|
||||||
|
escaped = FALSE;
|
||||||
|
|
||||||
|
windgoto(msg_row, msg_col);
|
||||||
|
--- 2400,2409 ----
|
||||||
|
else
|
||||||
|
{
|
||||||
|
msg_outtrans_len(
|
||||||
|
! ((char_u *)line_ga.ga_data) + line_ga.ga_len, len);
|
||||||
|
vcol += char2cells(c1);
|
||||||
|
}
|
||||||
|
! line_ga.ga_len += len;
|
||||||
|
escaped = FALSE;
|
||||||
|
|
||||||
|
windgoto(msg_row, msg_col);
|
||||||
|
*** ../vim-7.4.323/src/version.c 2014-06-12 18:39:16.828400409 +0200
|
||||||
|
--- src/version.c 2014-06-12 19:37:40.296532950 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 324,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
ZOOT: I'm afraid our life must seem very dull and quiet compared to yours.
|
||||||
|
We are but eightscore young blondes, all between sixteen and
|
||||||
|
nineteen-and-a-half, cut off in this castle, with no one to protect us.
|
||||||
|
Oooh. It is a lonely life ... bathing ... dressing ... undressing ...
|
||||||
|
making exciting underwear....
|
||||||
|
"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 ///
|
62
7.4.325
Normal file
62
7.4.325
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.325
|
||||||
|
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.4.325
|
||||||
|
Problem: When starting the gui and changing the window size the status line
|
||||||
|
may not be drawn correctly.
|
||||||
|
Solution: Catch new_win_height() being called recursively. (Christian
|
||||||
|
Brabandt)
|
||||||
|
Files: src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.324/src/window.c 2014-06-12 14:01:27.579769788 +0200
|
||||||
|
--- src/window.c 2014-06-13 20:04:59.051863582 +0200
|
||||||
|
***************
|
||||||
|
*** 5660,5666 ****
|
||||||
|
if (wp->w_height > 0)
|
||||||
|
{
|
||||||
|
if (wp == curwin)
|
||||||
|
! validate_cursor(); /* w_wrow needs to be valid */
|
||||||
|
if (wp->w_wrow != wp->w_prev_fraction_row)
|
||||||
|
set_fraction(wp);
|
||||||
|
}
|
||||||
|
--- 5660,5671 ----
|
||||||
|
if (wp->w_height > 0)
|
||||||
|
{
|
||||||
|
if (wp == curwin)
|
||||||
|
! /* w_wrow needs to be valid. When setting 'laststatus' this may
|
||||||
|
! * call win_new_height() recursively. */
|
||||||
|
! validate_cursor();
|
||||||
|
! if (wp->w_height != prev_height)
|
||||||
|
! return; /* Recursive call already changed the size, bail out here
|
||||||
|
! to avoid the following to mess things up. */
|
||||||
|
if (wp->w_wrow != wp->w_prev_fraction_row)
|
||||||
|
set_fraction(wp);
|
||||||
|
}
|
||||||
|
*** ../vim-7.4.324/src/version.c 2014-06-12 19:44:45.324549030 +0200
|
||||||
|
--- src/version.c 2014-06-13 20:06:12.947866378 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 325,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
DINGO: And after the spanking ... the oral sex.
|
||||||
|
GALAHAD: Oh, dear! Well, I...
|
||||||
|
GIRLS: The oral sex ... The oral sex.
|
||||||
|
GALAHAD: Well, I suppose I could stay a BIT longer.
|
||||||
|
"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 ///
|
51
7.4.326
Normal file
51
7.4.326
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.326
|
||||||
|
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.4.326
|
||||||
|
Problem: Can't build Tiny version. (Elimar Riesebieter)
|
||||||
|
Solution: Add #ifdef.
|
||||||
|
Files: src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.325/src/window.c 2014-06-13 20:08:41.295871990 +0200
|
||||||
|
--- src/window.c 2014-06-14 12:51:00.010147123 +0200
|
||||||
|
***************
|
||||||
|
*** 4597,4608 ****
|
||||||
|
--- 4597,4610 ----
|
||||||
|
if (wp != aucmd_win)
|
||||||
|
#endif
|
||||||
|
win_remove(wp, tp);
|
||||||
|
+ #ifdef FEAT_AUTOCMD
|
||||||
|
if (autocmd_busy)
|
||||||
|
{
|
||||||
|
wp->w_next = au_pending_free_win;
|
||||||
|
au_pending_free_win = wp;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
+ #endif
|
||||||
|
vim_free(wp);
|
||||||
|
|
||||||
|
#ifdef FEAT_AUTOCMD
|
||||||
|
*** ../vim-7.4.325/src/version.c 2014-06-13 20:08:41.295871990 +0200
|
||||||
|
--- src/version.c 2014-06-14 12:53:05.134151857 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 326,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
You cannot propel yourself forward by patting yourself on the back.
|
||||||
|
|
||||||
|
/// 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 ///
|
163
7.4.327
Normal file
163
7.4.327
Normal file
@ -0,0 +1,163 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.327
|
||||||
|
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.4.327
|
||||||
|
Problem: When 'verbose' is set to display the return value of a function,
|
||||||
|
may get E724 repeatedly.
|
||||||
|
Solution: Do not give an error for verbose messages. Abort conversion to
|
||||||
|
string after an error.
|
||||||
|
Files: src/eval.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.326/src/eval.c 2014-06-12 18:39:16.828400409 +0200
|
||||||
|
--- src/eval.c 2014-06-17 12:48:12.083946675 +0200
|
||||||
|
***************
|
||||||
|
*** 134,139 ****
|
||||||
|
--- 134,142 ----
|
||||||
|
#define COPYID_INC 2
|
||||||
|
#define COPYID_MASK (~0x1)
|
||||||
|
|
||||||
|
+ /* Abort conversion to string after a recursion error. */
|
||||||
|
+ static int did_echo_string_emsg = FALSE;
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* Array to hold the hashtab with variables local to each sourced script.
|
||||||
|
* Each item holds a variable (nameless) that points to the dict_T.
|
||||||
|
***************
|
||||||
|
*** 6686,6691 ****
|
||||||
|
--- 6689,6696 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
line_breakcheck();
|
||||||
|
+ if (did_echo_string_emsg) /* recursion error, bail out */
|
||||||
|
+ break;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Allocate result buffer with its total size, avoid re-allocation and
|
||||||
|
***************
|
||||||
|
*** 7460,7467 ****
|
||||||
|
if (s != NULL)
|
||||||
|
ga_concat(&ga, s);
|
||||||
|
vim_free(tofree);
|
||||||
|
! if (s == NULL)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (todo > 0)
|
||||||
|
--- 7465,7474 ----
|
||||||
|
if (s != NULL)
|
||||||
|
ga_concat(&ga, s);
|
||||||
|
vim_free(tofree);
|
||||||
|
! if (s == NULL || did_echo_string_emsg)
|
||||||
|
break;
|
||||||
|
+ line_breakcheck();
|
||||||
|
+
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (todo > 0)
|
||||||
|
***************
|
||||||
|
*** 7619,7627 ****
|
||||||
|
|
||||||
|
if (recurse >= DICT_MAXNEST)
|
||||||
|
{
|
||||||
|
! EMSG(_("E724: variable nested too deep for displaying"));
|
||||||
|
*tofree = NULL;
|
||||||
|
! return NULL;
|
||||||
|
}
|
||||||
|
++recurse;
|
||||||
|
|
||||||
|
--- 7626,7641 ----
|
||||||
|
|
||||||
|
if (recurse >= DICT_MAXNEST)
|
||||||
|
{
|
||||||
|
! if (!did_echo_string_emsg)
|
||||||
|
! {
|
||||||
|
! /* Only give this message once for a recursive call to avoid
|
||||||
|
! * flooding the user with errors. And stop iterating over lists
|
||||||
|
! * and dicts. */
|
||||||
|
! did_echo_string_emsg = TRUE;
|
||||||
|
! EMSG(_("E724: variable nested too deep for displaying"));
|
||||||
|
! }
|
||||||
|
*tofree = NULL;
|
||||||
|
! return (char_u *)"{E724}";
|
||||||
|
}
|
||||||
|
++recurse;
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 7689,7695 ****
|
||||||
|
*tofree = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
! --recurse;
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
|
||||||
|
--- 7703,7710 ----
|
||||||
|
*tofree = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
! if (--recurse == 0)
|
||||||
|
! did_echo_string_emsg = FALSE;
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 23303,23309 ****
|
||||||
|
--- 23318,23327 ----
|
||||||
|
msg_outnum((long)argvars[i].vval.v_number);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
+ /* Do not want errors such as E724 here. */
|
||||||
|
+ ++emsg_off;
|
||||||
|
s = tv2string(&argvars[i], &tofree, numbuf2, 0);
|
||||||
|
+ --emsg_off;
|
||||||
|
if (s != NULL)
|
||||||
|
{
|
||||||
|
if (vim_strsize(s) > MSG_BUF_CLEN)
|
||||||
|
***************
|
||||||
|
*** 23395,23402 ****
|
||||||
|
|
||||||
|
/* The value may be very long. Skip the middle part, so that we
|
||||||
|
* have some idea how it starts and ends. smsg() would always
|
||||||
|
! * truncate it at the end. */
|
||||||
|
s = tv2string(fc->rettv, &tofree, numbuf2, 0);
|
||||||
|
if (s != NULL)
|
||||||
|
{
|
||||||
|
if (vim_strsize(s) > MSG_BUF_CLEN)
|
||||||
|
--- 23413,23422 ----
|
||||||
|
|
||||||
|
/* The value may be very long. Skip the middle part, so that we
|
||||||
|
* have some idea how it starts and ends. smsg() would always
|
||||||
|
! * truncate it at the end. Don't want errors such as E724 here. */
|
||||||
|
! ++emsg_off;
|
||||||
|
s = tv2string(fc->rettv, &tofree, numbuf2, 0);
|
||||||
|
+ --emsg_off;
|
||||||
|
if (s != NULL)
|
||||||
|
{
|
||||||
|
if (vim_strsize(s) > MSG_BUF_CLEN)
|
||||||
|
*** ../vim-7.4.326/src/version.c 2014-06-14 12:53:27.394152699 +0200
|
||||||
|
--- src/version.c 2014-06-17 12:41:45.019932032 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 327,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
TALL KNIGHT: We shall say Ni! again to you if you do not appease us.
|
||||||
|
ARTHUR: All right! What do you want?
|
||||||
|
TALL KNIGHT: We want ... a shrubbery!
|
||||||
|
"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 ///
|
82
7.4.328
Normal file
82
7.4.328
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.328
|
||||||
|
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.4.328
|
||||||
|
Problem: Selection of inner block is inconsistent.
|
||||||
|
Solution: Skip indent not only for '}' but all parens. (Tom McDonald)
|
||||||
|
Files: src/search.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.327/src/search.c 2014-03-23 15:12:29.935264336 +0100
|
||||||
|
--- src/search.c 2014-06-17 12:37:49.075923106 +0200
|
||||||
|
***************
|
||||||
|
*** 3608,3628 ****
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Try to exclude the '(', '{', ')', '}', etc. when "include" is FALSE.
|
||||||
|
! * If the ending '}' is only preceded by indent, skip that indent.
|
||||||
|
! * But only if the resulting area is not smaller than what we started with.
|
||||||
|
*/
|
||||||
|
while (!include)
|
||||||
|
{
|
||||||
|
incl(&start_pos);
|
||||||
|
sol = (curwin->w_cursor.col == 0);
|
||||||
|
decl(&curwin->w_cursor);
|
||||||
|
! if (what == '{')
|
||||||
|
! while (inindent(1))
|
||||||
|
! {
|
||||||
|
! sol = TRUE;
|
||||||
|
! if (decl(&curwin->w_cursor) != 0)
|
||||||
|
! break;
|
||||||
|
! }
|
||||||
|
/*
|
||||||
|
* In Visual mode, when the resulting area is not bigger than what we
|
||||||
|
* started with, extend it to the next block, and then exclude again.
|
||||||
|
--- 3608,3629 ----
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Try to exclude the '(', '{', ')', '}', etc. when "include" is FALSE.
|
||||||
|
! * If the ending '}', ')' or ']' is only preceded by indent, skip that
|
||||||
|
! * indent. But only if the resulting area is not smaller than what we
|
||||||
|
! * started with.
|
||||||
|
*/
|
||||||
|
while (!include)
|
||||||
|
{
|
||||||
|
incl(&start_pos);
|
||||||
|
sol = (curwin->w_cursor.col == 0);
|
||||||
|
decl(&curwin->w_cursor);
|
||||||
|
! while (inindent(1))
|
||||||
|
! {
|
||||||
|
! sol = TRUE;
|
||||||
|
! if (decl(&curwin->w_cursor) != 0)
|
||||||
|
! break;
|
||||||
|
! }
|
||||||
|
!
|
||||||
|
/*
|
||||||
|
* In Visual mode, when the resulting area is not bigger than what we
|
||||||
|
* started with, extend it to the next block, and then exclude again.
|
||||||
|
*** ../vim-7.4.327/src/version.c 2014-06-17 12:51:13.207953527 +0200
|
||||||
|
--- src/version.c 2014-06-17 12:52:35.279956632 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 328,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
FATHER: One day, lad, all this will be yours ...
|
||||||
|
PRINCE: What - the curtains?
|
||||||
|
"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.4.329
Normal file
55
7.4.329
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.329
|
||||||
|
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.4.329
|
||||||
|
Problem: When moving the cursor and then switching to another window the
|
||||||
|
previous window isn't scrolled. (Yukihiro Nakadaira)
|
||||||
|
Solution: Call update_topline() before leaving the window. (Christian
|
||||||
|
Brabandt)
|
||||||
|
Files: src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.328/src/window.c 2014-06-14 12:53:27.394152699 +0200
|
||||||
|
--- src/window.c 2014-06-17 13:44:48.812075178 +0200
|
||||||
|
***************
|
||||||
|
*** 4250,4255 ****
|
||||||
|
--- 4250,4260 ----
|
||||||
|
/* sync undo before leaving the current buffer */
|
||||||
|
if (undo_sync && curbuf != wp->w_buffer)
|
||||||
|
u_sync(FALSE);
|
||||||
|
+
|
||||||
|
+ /* Might need to scroll the old window before switching, e.g., when the
|
||||||
|
+ * cursor was moved. */
|
||||||
|
+ update_topline();
|
||||||
|
+
|
||||||
|
/* may have to copy the buffer options when 'cpo' contains 'S' */
|
||||||
|
if (wp->w_buffer != curbuf)
|
||||||
|
buf_copy_options(wp->w_buffer, BCO_ENTER | BCO_NOHELP);
|
||||||
|
*** ../vim-7.4.328/src/version.c 2014-06-17 13:50:06.148087184 +0200
|
||||||
|
--- src/version.c 2014-06-17 13:51:09.960089598 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 329,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
FATHER: Make sure the Prince doesn't leave this room until I come and
|
||||||
|
get him.
|
||||||
|
FIRST GUARD: Not ... to leave the room ... even if you come and get him.
|
||||||
|
FATHER: No. Until I come and get him.
|
||||||
|
SECOND GUARD: Hic.
|
||||||
|
"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 ///
|
47
7.4.331
Normal file
47
7.4.331
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.331
|
||||||
|
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.4.331
|
||||||
|
Problem: Relative numbering not updated after a linewise yank. Issue 235.
|
||||||
|
Solution: Redraw after the yank. (Christian Brabandt)
|
||||||
|
Files: src/ops.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.330/src/ops.c 2014-04-29 15:55:39.443801021 +0200
|
||||||
|
--- src/ops.c 2014-06-17 18:14:36.584687585 +0200
|
||||||
|
***************
|
||||||
|
*** 3150,3155 ****
|
||||||
|
--- 3150,3157 ----
|
||||||
|
vim_free(y_current->y_array);
|
||||||
|
y_current = curr;
|
||||||
|
}
|
||||||
|
+ if (curwin->w_p_rnu)
|
||||||
|
+ redraw_later(SOME_VALID); /* cursor moved to start */
|
||||||
|
if (mess) /* Display message about yank? */
|
||||||
|
{
|
||||||
|
if (yanktype == MCHAR
|
||||||
|
*** ../vim-7.4.330/src/version.c 2014-06-17 17:48:21.784628008 +0200
|
||||||
|
--- src/version.c 2014-06-17 18:13:35.824685286 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 331,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
CONCORDE: Message for you, sir.
|
||||||
|
He falls forward revealing the arrow with the note.
|
||||||
|
"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 ///
|
118
7.4.332
Normal file
118
7.4.332
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.332
|
||||||
|
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.4.332
|
||||||
|
Problem: GTK: When a sign icon doesn't fit exactly there can be ugly gaps.
|
||||||
|
Solution: Scale the sign to fit when the aspect ratio is not too far off.
|
||||||
|
(Christian Brabandt)
|
||||||
|
Files: src/gui_gtk_x11.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.331/src/gui_gtk_x11.c 2014-05-13 20:19:53.573808877 +0200
|
||||||
|
--- src/gui_gtk_x11.c 2014-06-17 18:44:39.900755807 +0200
|
||||||
|
***************
|
||||||
|
*** 5965,5991 ****
|
||||||
|
* Decide whether we need to scale. Allow one pixel of border
|
||||||
|
* width to be cut off, in order to avoid excessive scaling for
|
||||||
|
* tiny differences in font size.
|
||||||
|
*/
|
||||||
|
need_scale = (width > SIGN_WIDTH + 2
|
||||||
|
! || height > SIGN_HEIGHT + 2
|
||||||
|
|| (width < 3 * SIGN_WIDTH / 4
|
||||||
|
&& height < 3 * SIGN_HEIGHT / 4));
|
||||||
|
if (need_scale)
|
||||||
|
{
|
||||||
|
! double aspect;
|
||||||
|
|
||||||
|
/* Keep the original aspect ratio */
|
||||||
|
aspect = (double)height / (double)width;
|
||||||
|
width = (double)SIGN_WIDTH * SIGN_ASPECT / aspect;
|
||||||
|
width = MIN(width, SIGN_WIDTH);
|
||||||
|
! height = (double)width * aspect;
|
||||||
|
|
||||||
|
! /* This doesn't seem to be worth caching, and doing so
|
||||||
|
! * would complicate the code quite a bit. */
|
||||||
|
! sign = gdk_pixbuf_scale_simple(sign, width, height,
|
||||||
|
! GDK_INTERP_BILINEAR);
|
||||||
|
! if (sign == NULL)
|
||||||
|
! return; /* out of memory */
|
||||||
|
}
|
||||||
|
|
||||||
|
/* The origin is the upper-left corner of the pixmap. Therefore
|
||||||
|
--- 5965,6012 ----
|
||||||
|
* Decide whether we need to scale. Allow one pixel of border
|
||||||
|
* width to be cut off, in order to avoid excessive scaling for
|
||||||
|
* tiny differences in font size.
|
||||||
|
+ * Do scale to fit the height to avoid gaps because of linespacing.
|
||||||
|
*/
|
||||||
|
need_scale = (width > SIGN_WIDTH + 2
|
||||||
|
! || height != SIGN_HEIGHT
|
||||||
|
|| (width < 3 * SIGN_WIDTH / 4
|
||||||
|
&& height < 3 * SIGN_HEIGHT / 4));
|
||||||
|
if (need_scale)
|
||||||
|
{
|
||||||
|
! double aspect;
|
||||||
|
! int w = width;
|
||||||
|
! int h = height;
|
||||||
|
|
||||||
|
/* Keep the original aspect ratio */
|
||||||
|
aspect = (double)height / (double)width;
|
||||||
|
width = (double)SIGN_WIDTH * SIGN_ASPECT / aspect;
|
||||||
|
width = MIN(width, SIGN_WIDTH);
|
||||||
|
! if (((double)(MAX(height, SIGN_HEIGHT)) /
|
||||||
|
! (double)(MIN(height, SIGN_HEIGHT))) < 1.15)
|
||||||
|
! {
|
||||||
|
! /* Change the aspect ratio by at most 15% to fill the
|
||||||
|
! * available space completly. */
|
||||||
|
! height = (double)SIGN_HEIGHT * SIGN_ASPECT / aspect;
|
||||||
|
! height = MIN(height, SIGN_HEIGHT);
|
||||||
|
! }
|
||||||
|
! else
|
||||||
|
! height = (double)width * aspect;
|
||||||
|
|
||||||
|
! if (w == width && h == height)
|
||||||
|
! {
|
||||||
|
! /* no change in dimensions; don't decrease reference counter
|
||||||
|
! * (below) */
|
||||||
|
! need_scale = FALSE;
|
||||||
|
! }
|
||||||
|
! else
|
||||||
|
! {
|
||||||
|
! /* This doesn't seem to be worth caching, and doing so would
|
||||||
|
! * complicate the code quite a bit. */
|
||||||
|
! sign = gdk_pixbuf_scale_simple(sign, width, height,
|
||||||
|
! GDK_INTERP_BILINEAR);
|
||||||
|
! if (sign == NULL)
|
||||||
|
! return; /* out of memory */
|
||||||
|
! }
|
||||||
|
}
|
||||||
|
|
||||||
|
/* The origin is the upper-left corner of the pixmap. Therefore
|
||||||
|
*** ../vim-7.4.331/src/version.c 2014-06-17 18:16:08.420691059 +0200
|
||||||
|
--- src/version.c 2014-06-17 18:46:49.784760721 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 332,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
"To whoever finds this note -
|
||||||
|
I have been imprisoned by my father who wishes me to marry
|
||||||
|
against my will. Please please please please come and rescue me.
|
||||||
|
I am in the tall tower of Swamp Castle."
|
||||||
|
SIR LAUNCELOT's eyes light up with holy inspiration.
|
||||||
|
"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 ///
|
72
7.4.333
Normal file
72
7.4.333
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.333
|
||||||
|
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.4.333
|
||||||
|
Problem: Compiler warning for unused function.
|
||||||
|
Solution: Put the function inside the #ifdef.
|
||||||
|
Files: src/screen.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.332/src/screen.c 2014-06-17 17:48:21.784628008 +0200
|
||||||
|
--- src/screen.c 2014-06-17 23:16:24.121372619 +0200
|
||||||
|
***************
|
||||||
|
*** 139,145 ****
|
||||||
|
static void redraw_custom_statusline __ARGS((win_T *wp));
|
||||||
|
#endif
|
||||||
|
#ifdef FEAT_SEARCH_EXTRA
|
||||||
|
! #define SEARCH_HL_PRIORITY 0
|
||||||
|
static void start_search_hl __ARGS((void));
|
||||||
|
static void end_search_hl __ARGS((void));
|
||||||
|
static void init_search_hl __ARGS((win_T *wp));
|
||||||
|
--- 139,145 ----
|
||||||
|
static void redraw_custom_statusline __ARGS((win_T *wp));
|
||||||
|
#endif
|
||||||
|
#ifdef FEAT_SEARCH_EXTRA
|
||||||
|
! # define SEARCH_HL_PRIORITY 0
|
||||||
|
static void start_search_hl __ARGS((void));
|
||||||
|
static void end_search_hl __ARGS((void));
|
||||||
|
static void init_search_hl __ARGS((win_T *wp));
|
||||||
|
***************
|
||||||
|
*** 7476,7482 ****
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
- #endif
|
||||||
|
|
||||||
|
static int
|
||||||
|
next_search_hl_pos(shl, lnum, posmatch, mincol)
|
||||||
|
--- 7476,7481 ----
|
||||||
|
***************
|
||||||
|
*** 7533,7538 ****
|
||||||
|
--- 7532,7538 ----
|
||||||
|
}
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
+ #endif
|
||||||
|
|
||||||
|
static void
|
||||||
|
screen_start_highlight(attr)
|
||||||
|
*** ../vim-7.4.332/src/version.c 2014-06-17 18:46:57.880761027 +0200
|
||||||
|
--- src/version.c 2014-06-17 23:17:14.949374542 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 333,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
You had connectors? Eeee, when I were a lad we 'ad to carry the
|
||||||
|
bits between the computer and the terminal with a spoon...
|
||||||
|
|
||||||
|
/// 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 ///
|
112
7.4.334
Normal file
112
7.4.334
Normal file
@ -0,0 +1,112 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.334
|
||||||
|
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.4.334 (after 7.4.330)
|
||||||
|
Problem: Unitialized variables, causing some problems.
|
||||||
|
Solution: Initialize the variables. (Dominique Pelle)
|
||||||
|
Files: src/screen.c, src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.333/src/screen.c 2014-06-17 23:17:56.489376113 +0200
|
||||||
|
--- src/screen.c 2014-06-18 21:16:23.560368846 +0200
|
||||||
|
***************
|
||||||
|
*** 7363,7369 ****
|
||||||
|
match_T *shl; /* points to search_hl or a match */
|
||||||
|
linenr_T lnum;
|
||||||
|
colnr_T mincol; /* minimal column for a match */
|
||||||
|
! matchitem_T *cur; /* to retrieve match postions if any */
|
||||||
|
{
|
||||||
|
linenr_T l;
|
||||||
|
colnr_T matchcol;
|
||||||
|
--- 7363,7369 ----
|
||||||
|
match_T *shl; /* points to search_hl or a match */
|
||||||
|
linenr_T lnum;
|
||||||
|
colnr_T mincol; /* minimal column for a match */
|
||||||
|
! matchitem_T *cur; /* to retrieve match positions if any */
|
||||||
|
{
|
||||||
|
linenr_T l;
|
||||||
|
colnr_T matchcol;
|
||||||
|
***************
|
||||||
|
*** 7458,7466 ****
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (cur != NULL)
|
||||||
|
- {
|
||||||
|
nmatched = next_search_hl_pos(shl, lnum, &(cur->pos), matchcol);
|
||||||
|
! }
|
||||||
|
if (nmatched == 0)
|
||||||
|
{
|
||||||
|
shl->lnum = 0; /* no match found */
|
||||||
|
--- 7458,7466 ----
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (cur != NULL)
|
||||||
|
nmatched = next_search_hl_pos(shl, lnum, &(cur->pos), matchcol);
|
||||||
|
! else
|
||||||
|
! nmatched = 0;
|
||||||
|
if (nmatched == 0)
|
||||||
|
{
|
||||||
|
shl->lnum = 0; /* no match found */
|
||||||
|
*** ../vim-7.4.333/src/window.c 2014-06-17 17:48:21.784628008 +0200
|
||||||
|
--- src/window.c 2014-06-18 21:12:15.232359452 +0200
|
||||||
|
***************
|
||||||
|
*** 6809,6815 ****
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Build new match. */
|
||||||
|
! m = (matchitem_T *)alloc(sizeof(matchitem_T));
|
||||||
|
m->id = id;
|
||||||
|
m->priority = prio;
|
||||||
|
m->pattern = pat == NULL ? NULL : vim_strsave(pat);
|
||||||
|
--- 6809,6815 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Build new match. */
|
||||||
|
! m = (matchitem_T *)alloc_clear(sizeof(matchitem_T));
|
||||||
|
m->id = id;
|
||||||
|
m->priority = prio;
|
||||||
|
m->pattern = pat == NULL ? NULL : vim_strsave(pat);
|
||||||
|
***************
|
||||||
|
*** 6835,6841 ****
|
||||||
|
int len = 1;
|
||||||
|
list_T *subl;
|
||||||
|
listitem_T *subli;
|
||||||
|
! int error;
|
||||||
|
|
||||||
|
if (li == NULL)
|
||||||
|
{
|
||||||
|
--- 6835,6841 ----
|
||||||
|
int len = 1;
|
||||||
|
list_T *subl;
|
||||||
|
listitem_T *subli;
|
||||||
|
! int error = FALSE;
|
||||||
|
|
||||||
|
if (li == NULL)
|
||||||
|
{
|
||||||
|
*** ../vim-7.4.333/src/version.c 2014-06-17 23:17:56.493376113 +0200
|
||||||
|
--- src/version.c 2014-06-18 21:14:16.516364040 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 334,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
You were lucky. We lived for three months in a brown paper bag in a
|
||||||
|
septic tank. We used to have to get up at six o'clock in the morning,
|
||||||
|
clean the bag, eat a crust of stale bread, go to work down mill for
|
||||||
|
fourteen hours a day week in-week out. When we got home, our Dad
|
||||||
|
would thrash us to sleep with his belt!
|
||||||
|
|
||||||
|
/// 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 ///
|
108
7.4.335
Normal file
108
7.4.335
Normal file
@ -0,0 +1,108 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.335
|
||||||
|
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.4.335
|
||||||
|
Problem: No digraph for the new rouble sign.
|
||||||
|
Solution: Add the digraphs =R and =P.
|
||||||
|
Files: src/digraph.c, runtime/doc/digraph.txt
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.334/src/digraph.c 2012-01-10 21:57:16.000000000 +0100
|
||||||
|
--- src/digraph.c 2014-06-18 21:36:46.148415099 +0200
|
||||||
|
***************
|
||||||
|
*** 1425,1430 ****
|
||||||
|
--- 1425,1432 ----
|
||||||
|
{'W', '=', 0x20a9},
|
||||||
|
{'=', 'e', 0x20ac}, /* euro */
|
||||||
|
{'E', 'u', 0x20ac}, /* euro */
|
||||||
|
+ {'=', 'R', 0x20bd}, /* rouble */
|
||||||
|
+ {'=', 'P', 0x20bd}, /* rouble */
|
||||||
|
{'o', 'C', 0x2103},
|
||||||
|
{'c', 'o', 0x2105},
|
||||||
|
{'o', 'F', 0x2109},
|
||||||
|
*** ../vim-7.4.334/runtime/doc/digraph.txt 2013-08-10 13:24:52.000000000 +0200
|
||||||
|
--- runtime/doc/digraph.txt 2014-06-18 21:35:21.684411903 +0200
|
||||||
|
***************
|
||||||
|
*** 147,153 ****
|
||||||
|
Two 2 Hook
|
||||||
|
Nine 9 Horn
|
||||||
|
|
||||||
|
! Equals = Cyrillic
|
||||||
|
Asterisk * Greek
|
||||||
|
Percent sign % Greek/Cyrillic special
|
||||||
|
Plus + smalls: Arabic, capitals: Hebrew
|
||||||
|
--- 147,153 ----
|
||||||
|
Two 2 Hook
|
||||||
|
Nine 9 Horn
|
||||||
|
|
||||||
|
! Equals = Cyrillic (= used as second char)
|
||||||
|
Asterisk * Greek
|
||||||
|
Percent sign % Greek/Cyrillic special
|
||||||
|
Plus + smalls: Arabic, capitals: Hebrew
|
||||||
|
***************
|
||||||
|
*** 170,175 ****
|
||||||
|
--- 170,180 ----
|
||||||
|
used for the euro sign, while both of them are the character 164, 0xa4. For
|
||||||
|
compatibility with zsh Eu can also be used for the euro sign.
|
||||||
|
|
||||||
|
+ ROUBLE
|
||||||
|
+
|
||||||
|
+ The rouble sign was added in 2014 as 0x20bd. Vim supports the digraphs =R and
|
||||||
|
+ =P for this. Note that R= and P= are other characters.
|
||||||
|
+
|
||||||
|
*digraph-table*
|
||||||
|
char digraph hex dec official name ~
|
||||||
|
^@ NU 0x00 0 NULL (NUL)
|
||||||
|
***************
|
||||||
|
*** 966,971 ****
|
||||||
|
--- 971,978 ----
|
||||||
|
₧ Pt 20A7 8359 PESETA SIGN
|
||||||
|
₩ W= 20A9 8361 WON SIGN
|
||||||
|
€ Eu 20AC 8364 EURO SIGN
|
||||||
|
+ ₽ =R 20AC 8381 ROUBLE SIGN
|
||||||
|
+ ₽ =P 20AC 8381 ROUBLE SIGN
|
||||||
|
℃ oC 2103 8451 DEGREE CELSIUS
|
||||||
|
℅ co 2105 8453 CARE OF
|
||||||
|
℉ oF 2109 8457 DEGREE FAHRENHEIT
|
||||||
|
***************
|
||||||
|
*** 1077,1083 ****
|
||||||
|
⊥ -T 22A5 8869 UP TACK
|
||||||
|
⋅ .P 22C5 8901 DOT OPERATOR
|
||||||
|
⋮ :3 22EE 8942 VERTICAL ELLIPSIS
|
||||||
|
! ⋯ .3 22EF 8943 MIDLINE HORIZONTAL ELLIPSIS
|
||||||
|
⌂ Eh 2302 8962 HOUSE
|
||||||
|
⌈ <7 2308 8968 LEFT CEILING
|
||||||
|
⌉ >7 2309 8969 RIGHT CEILING
|
||||||
|
--- 1084,1090 ----
|
||||||
|
⊥ -T 22A5 8869 UP TACK
|
||||||
|
⋅ .P 22C5 8901 DOT OPERATOR
|
||||||
|
⋮ :3 22EE 8942 VERTICAL ELLIPSIS
|
||||||
|
! ⋯ .3 22EF 8943 MIDLINE HORIZONTAL ELLIPSIS
|
||||||
|
⌂ Eh 2302 8962 HOUSE
|
||||||
|
⌈ <7 2308 8968 LEFT CEILING
|
||||||
|
⌉ >7 2309 8969 RIGHT CEILING
|
||||||
|
*** ../vim-7.4.334/src/version.c 2014-06-18 21:20:07.240377308 +0200
|
||||||
|
--- src/version.c 2014-06-18 21:36:14.632413906 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 335,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
You got to work at a mill? Lucky! I got sent back to work in the
|
||||||
|
acid-mines for my daily crust of stale bread... which not even the
|
||||||
|
birds would eat.
|
||||||
|
|
||||||
|
/// 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 ///
|
100
7.4.336
Normal file
100
7.4.336
Normal file
@ -0,0 +1,100 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.336
|
||||||
|
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.4.336
|
||||||
|
Problem: Setting 'history' to a big value causes out-of-memory errors.
|
||||||
|
Solution: Limit the value to 10000. (Hirohito Higashi)
|
||||||
|
Files: runtime/doc/options.txt, src/option.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.335/runtime/doc/options.txt 2014-05-28 21:40:47.088329130 +0200
|
||||||
|
--- runtime/doc/options.txt 2014-06-25 11:44:16.985950668 +0200
|
||||||
|
***************
|
||||||
|
*** 3920,3931 ****
|
||||||
|
NOTE: This option is reset when 'compatible' is set.
|
||||||
|
|
||||||
|
*'history'* *'hi'*
|
||||||
|
! 'history' 'hi' number (Vim default: 20, Vi default: 0)
|
||||||
|
global
|
||||||
|
{not in Vi}
|
||||||
|
A history of ":" commands, and a history of previous search patterns
|
||||||
|
! are remembered. This option decides how many entries may be stored in
|
||||||
|
each of these histories (see |cmdline-editing|).
|
||||||
|
NOTE: This option is set to the Vi default value when 'compatible' is
|
||||||
|
set and to the Vim default value when 'compatible' is reset.
|
||||||
|
|
||||||
|
--- 3920,3932 ----
|
||||||
|
NOTE: This option is reset when 'compatible' is set.
|
||||||
|
|
||||||
|
*'history'* *'hi'*
|
||||||
|
! 'history' 'hi' number (Vim default: 50, Vi default: 0)
|
||||||
|
global
|
||||||
|
{not in Vi}
|
||||||
|
A history of ":" commands, and a history of previous search patterns
|
||||||
|
! is remembered. This option decides how many entries may be stored in
|
||||||
|
each of these histories (see |cmdline-editing|).
|
||||||
|
+ The maximum value is 10000.
|
||||||
|
NOTE: This option is set to the Vi default value when 'compatible' is
|
||||||
|
set and to the Vim default value when 'compatible' is reset.
|
||||||
|
|
||||||
|
*** ../vim-7.4.335/src/option.c 2014-05-13 12:16:44.037555110 +0200
|
||||||
|
--- src/option.c 2014-06-25 11:44:48.349951855 +0200
|
||||||
|
***************
|
||||||
|
*** 1392,1398 ****
|
||||||
|
SCRIPTID_INIT},
|
||||||
|
{"history", "hi", P_NUM|P_VIM,
|
||||||
|
(char_u *)&p_hi, PV_NONE,
|
||||||
|
! {(char_u *)0L, (char_u *)20L} SCRIPTID_INIT},
|
||||||
|
{"hkmap", "hk", P_BOOL|P_VI_DEF|P_VIM,
|
||||||
|
#ifdef FEAT_RIGHTLEFT
|
||||||
|
(char_u *)&p_hkmap, PV_NONE,
|
||||||
|
--- 1392,1398 ----
|
||||||
|
SCRIPTID_INIT},
|
||||||
|
{"history", "hi", P_NUM|P_VIM,
|
||||||
|
(char_u *)&p_hi, PV_NONE,
|
||||||
|
! {(char_u *)0L, (char_u *)50L} SCRIPTID_INIT},
|
||||||
|
{"hkmap", "hk", P_BOOL|P_VI_DEF|P_VIM,
|
||||||
|
#ifdef FEAT_RIGHTLEFT
|
||||||
|
(char_u *)&p_hkmap, PV_NONE,
|
||||||
|
***************
|
||||||
|
*** 8595,8600 ****
|
||||||
|
--- 8595,8605 ----
|
||||||
|
errmsg = e_positive;
|
||||||
|
p_hi = 0;
|
||||||
|
}
|
||||||
|
+ else if (p_hi > 10000)
|
||||||
|
+ {
|
||||||
|
+ errmsg = e_invarg;
|
||||||
|
+ p_hi = 10000;
|
||||||
|
+ }
|
||||||
|
if (p_re < 0 || p_re > 2)
|
||||||
|
{
|
||||||
|
errmsg = e_invarg;
|
||||||
|
*** ../vim-7.4.335/src/version.c 2014-06-18 21:38:12.216418355 +0200
|
||||||
|
--- src/version.c 2014-06-25 11:45:08.141952604 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 336,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
ARTHUR: Well, it doesn't matter. Will you go and tell your master that
|
||||||
|
Arthur from the Court of Camelot is here.
|
||||||
|
GUARD #1: Listen, in order to maintain air-speed velocity, a swallow
|
||||||
|
needs to beat its wings 43 times every second, right?
|
||||||
|
ARTHUR: Please!
|
||||||
|
The Quest for the Holy Grail (Monty Python)
|
||||||
|
|
||||||
|
/// 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 ///
|
51
7.4.337
Normal file
51
7.4.337
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.337
|
||||||
|
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.4.337
|
||||||
|
Problem: When there is an error preparing to edit the command line, the
|
||||||
|
command won't be executed. (Hirohito Higashi)
|
||||||
|
Solution: Reset did_emsg before editing.
|
||||||
|
Files: src/ex_getln.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.336/src/ex_getln.c 2014-06-12 19:44:45.324549030 +0200
|
||||||
|
--- src/ex_getln.c 2014-06-25 12:06:38.018001402 +0200
|
||||||
|
***************
|
||||||
|
*** 342,347 ****
|
||||||
|
--- 342,354 ----
|
||||||
|
do_digraph(-1); /* init digraph typeahead */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+ /* If something above caused an error, reset the flags, we do want to type
|
||||||
|
+ * and execute commands. Display may be messed up a bit. */
|
||||||
|
+ if (did_emsg)
|
||||||
|
+ redrawcmd();
|
||||||
|
+ did_emsg = FALSE;
|
||||||
|
+ got_int = FALSE;
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* Collect the command string, handling editing keys.
|
||||||
|
*/
|
||||||
|
*** ../vim-7.4.336/src/version.c 2014-06-25 11:48:40.733960646 +0200
|
||||||
|
--- src/version.c 2014-06-25 12:24:39.442042313 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 337,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Computers are not intelligent. They only think they are.
|
||||||
|
|
||||||
|
/// 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 ///
|
79
7.4.339
Normal file
79
7.4.339
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.339
|
||||||
|
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.4.339
|
||||||
|
Problem: Local function is available globally.
|
||||||
|
Solution: Add "static".
|
||||||
|
Files: src/option.c, src/proto/option.pro
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.338/src/option.c 2014-06-25 14:39:35.110348584 +0200
|
||||||
|
--- src/option.c 2014-06-25 14:42:33.986355351 +0200
|
||||||
|
***************
|
||||||
|
*** 3074,3079 ****
|
||||||
|
--- 3074,3080 ----
|
||||||
|
static char_u *get_varp_scope __ARGS((struct vimoption *p, int opt_flags));
|
||||||
|
static char_u *get_varp __ARGS((struct vimoption *));
|
||||||
|
static void option_value2string __ARGS((struct vimoption *, int opt_flags));
|
||||||
|
+ static void check_winopt __ARGS((winopt_T *wop));
|
||||||
|
static int wc_use_keyname __ARGS((char_u *varp, long *wcp));
|
||||||
|
#ifdef FEAT_LANGMAP
|
||||||
|
static void langmap_init __ARGS((void));
|
||||||
|
***************
|
||||||
|
*** 10305,10311 ****
|
||||||
|
/*
|
||||||
|
* Check for NULL pointers in a winopt_T and replace them with empty_option.
|
||||||
|
*/
|
||||||
|
! void
|
||||||
|
check_winopt(wop)
|
||||||
|
winopt_T *wop UNUSED;
|
||||||
|
{
|
||||||
|
--- 10306,10312 ----
|
||||||
|
/*
|
||||||
|
* Check for NULL pointers in a winopt_T and replace them with empty_option.
|
||||||
|
*/
|
||||||
|
! static void
|
||||||
|
check_winopt(wop)
|
||||||
|
winopt_T *wop UNUSED;
|
||||||
|
{
|
||||||
|
*** ../vim-7.4.338/src/proto/option.pro 2014-06-25 14:39:35.110348584 +0200
|
||||||
|
--- src/proto/option.pro 2014-06-25 14:42:38.702355530 +0200
|
||||||
|
***************
|
||||||
|
*** 40,46 ****
|
||||||
|
void win_copy_options __ARGS((win_T *wp_from, win_T *wp_to));
|
||||||
|
void copy_winopt __ARGS((winopt_T *from, winopt_T *to));
|
||||||
|
void check_win_options __ARGS((win_T *win));
|
||||||
|
- void check_winopt __ARGS((winopt_T *wop));
|
||||||
|
void clear_winopt __ARGS((winopt_T *wop));
|
||||||
|
void buf_copy_options __ARGS((buf_T *buf, int flags));
|
||||||
|
void reset_modifiable __ARGS((void));
|
||||||
|
--- 40,45 ----
|
||||||
|
*** ../vim-7.4.338/src/version.c 2014-06-25 14:39:35.114348584 +0200
|
||||||
|
--- src/version.c 2014-06-25 14:43:41.502357905 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 339,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
MORTICIAN: What?
|
||||||
|
CUSTOMER: Nothing -- here's your nine pence.
|
||||||
|
DEAD PERSON: I'm not dead!
|
||||||
|
MORTICIAN: Here -- he says he's not dead!
|
||||||
|
CUSTOMER: Yes, he is.
|
||||||
|
DEAD PERSON: I'm not!
|
||||||
|
The Quest for the Holy Grail (Monty Python)
|
||||||
|
|
||||||
|
/// 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 ///
|
97
7.4.340
Normal file
97
7.4.340
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.340
|
||||||
|
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.4.340
|
||||||
|
Problem: Error from sed about illegal bytes when installing Vim.
|
||||||
|
Solution: Prepend LC_ALL=C. (Itchyny)
|
||||||
|
Files: src/installman.sh
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.339/src/installman.sh 2010-05-15 13:04:07.000000000 +0200
|
||||||
|
--- src/installman.sh 2014-06-25 14:54:11.742381748 +0200
|
||||||
|
***************
|
||||||
|
*** 43,52 ****
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $what = "install"; then
|
||||||
|
# vim.1
|
||||||
|
echo installing $destdir/$exename.1
|
||||||
|
! sed -e s+/usr/local/lib/vim+$vimloc+ \
|
||||||
|
-e s+$vimloc/doc+$helpsubloc+ \
|
||||||
|
-e s+$vimloc/print+$printsubloc+ \
|
||||||
|
-e s+$vimloc/syntax+$synsubloc+ \
|
||||||
|
--- 43,55 ----
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
+ # Note: setting LC_ALL to C is required to avoid illegal byte errors from sed
|
||||||
|
+ # on some systems.
|
||||||
|
+
|
||||||
|
if test $what = "install"; then
|
||||||
|
# vim.1
|
||||||
|
echo installing $destdir/$exename.1
|
||||||
|
! LC_ALL=C sed -e s+/usr/local/lib/vim+$vimloc+ \
|
||||||
|
-e s+$vimloc/doc+$helpsubloc+ \
|
||||||
|
-e s+$vimloc/print+$printsubloc+ \
|
||||||
|
-e s+$vimloc/syntax+$synsubloc+ \
|
||||||
|
***************
|
||||||
|
*** 64,70 ****
|
||||||
|
|
||||||
|
# vimtutor.1
|
||||||
|
echo installing $destdir/$exename""tutor.1
|
||||||
|
! sed -e s+/usr/local/lib/vim+$vimloc+ \
|
||||||
|
-e s+$vimloc/tutor+$tutorsubloc+ \
|
||||||
|
$helpsource/vimtutor$langadd.1 > $destdir/$exename""tutor.1
|
||||||
|
chmod $manmod $destdir/$exename""tutor.1
|
||||||
|
--- 67,73 ----
|
||||||
|
|
||||||
|
# vimtutor.1
|
||||||
|
echo installing $destdir/$exename""tutor.1
|
||||||
|
! LC_ALL=C sed -e s+/usr/local/lib/vim+$vimloc+ \
|
||||||
|
-e s+$vimloc/tutor+$tutorsubloc+ \
|
||||||
|
$helpsource/vimtutor$langadd.1 > $destdir/$exename""tutor.1
|
||||||
|
chmod $manmod $destdir/$exename""tutor.1
|
||||||
|
***************
|
||||||
|
*** 76,82 ****
|
||||||
|
|
||||||
|
# evim.1
|
||||||
|
echo installing $destdir/$evimname.1
|
||||||
|
! sed -e s+/usr/local/lib/vim+$vimloc+ \
|
||||||
|
-e s+$vimloc/evim.vim+$scriptloc/evim.vim+ \
|
||||||
|
$helpsource/evim$langadd.1 > $destdir/$evimname.1
|
||||||
|
chmod $manmod $destdir/$evimname.1
|
||||||
|
--- 79,85 ----
|
||||||
|
|
||||||
|
# evim.1
|
||||||
|
echo installing $destdir/$evimname.1
|
||||||
|
! LC_ALL=C sed -e s+/usr/local/lib/vim+$vimloc+ \
|
||||||
|
-e s+$vimloc/evim.vim+$scriptloc/evim.vim+ \
|
||||||
|
$helpsource/evim$langadd.1 > $destdir/$evimname.1
|
||||||
|
chmod $manmod $destdir/$evimname.1
|
||||||
|
*** ../vim-7.4.339/src/version.c 2014-06-25 14:44:04.458358774 +0200
|
||||||
|
--- src/version.c 2014-06-25 14:55:14.198384111 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 340,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
DEAD PERSON: I'm getting better!
|
||||||
|
CUSTOMER: No, you're not -- you'll be stone dead in a moment.
|
||||||
|
MORTICIAN: Oh, I can't take him like that -- it's against regulations.
|
||||||
|
The Quest for the Holy Grail (Monty Python)
|
||||||
|
|
||||||
|
/// 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 ///
|
178
7.4.341
Normal file
178
7.4.341
Normal file
@ -0,0 +1,178 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.341
|
||||||
|
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.4.341
|
||||||
|
Problem: sort() doesn't handle numbers well.
|
||||||
|
Solution: Add an argument to specify sorting on numbers. (Christian Brabandt)
|
||||||
|
Files: runtime/doc/eval.txt, src/eval.c, src/testdir/test55.in,
|
||||||
|
src/testdir/test55.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.340/runtime/doc/eval.txt 2014-06-25 14:39:35.094348583 +0200
|
||||||
|
--- runtime/doc/eval.txt 2014-06-25 17:05:50.606680574 +0200
|
||||||
|
***************
|
||||||
|
*** 5618,5628 ****
|
||||||
|
|
||||||
|
If you want a list to remain unmodified make a copy first: >
|
||||||
|
:let sortedlist = sort(copy(mylist))
|
||||||
|
- < Uses the string representation of each item to sort on.
|
||||||
|
- Numbers sort after Strings, |Lists| after Numbers.
|
||||||
|
- For sorting text in the current buffer use |:sort|.
|
||||||
|
|
||||||
|
! When {func} is given and it is one then case is ignored.
|
||||||
|
When {func} is a |Funcref| or a function name, this function
|
||||||
|
is called to compare items. The function is invoked with two
|
||||||
|
items as argument and must return zero if they are equal, 1 or
|
||||||
|
--- 5628,5647 ----
|
||||||
|
|
||||||
|
If you want a list to remain unmodified make a copy first: >
|
||||||
|
:let sortedlist = sort(copy(mylist))
|
||||||
|
|
||||||
|
! < When {func} is omitted, is empty or zero, then sort() uses the
|
||||||
|
! string representation of each item to sort on. Numbers sort
|
||||||
|
! after Strings, |Lists| after Numbers. For sorting text in the
|
||||||
|
! current buffer use |:sort|.
|
||||||
|
!
|
||||||
|
! When {func} is given and it is is '1' or 'i' then case is
|
||||||
|
! ignored.
|
||||||
|
!
|
||||||
|
! When {func} is given and it is 'n' then all items will be
|
||||||
|
! sorted numerical (Implementation detail: This uses the
|
||||||
|
! strtod() function to parse numbers, Strings, Lists, Dicts and
|
||||||
|
! Funcrefs will be considered as being 0).
|
||||||
|
!
|
||||||
|
When {func} is a |Funcref| or a function name, this function
|
||||||
|
is called to compare items. The function is invoked with two
|
||||||
|
items as argument and must return zero if they are equal, 1 or
|
||||||
|
*** ../vim-7.4.340/src/eval.c 2014-06-17 17:48:21.776628008 +0200
|
||||||
|
--- src/eval.c 2014-06-25 17:23:05.466719724 +0200
|
||||||
|
***************
|
||||||
|
*** 17330,17335 ****
|
||||||
|
--- 17330,17336 ----
|
||||||
|
item_compare2 __ARGS((const void *s1, const void *s2));
|
||||||
|
|
||||||
|
static int item_compare_ic;
|
||||||
|
+ static int item_compare_numeric;
|
||||||
|
static char_u *item_compare_func;
|
||||||
|
static dict_T *item_compare_selfdict;
|
||||||
|
static int item_compare_func_err;
|
||||||
|
***************
|
||||||
|
*** 17359,17368 ****
|
||||||
|
p1 = (char_u *)"";
|
||||||
|
if (p2 == NULL)
|
||||||
|
p2 = (char_u *)"";
|
||||||
|
! if (item_compare_ic)
|
||||||
|
! res = STRICMP(p1, p2);
|
||||||
|
else
|
||||||
|
! res = STRCMP(p1, p2);
|
||||||
|
vim_free(tofree1);
|
||||||
|
vim_free(tofree2);
|
||||||
|
return res;
|
||||||
|
--- 17360,17379 ----
|
||||||
|
p1 = (char_u *)"";
|
||||||
|
if (p2 == NULL)
|
||||||
|
p2 = (char_u *)"";
|
||||||
|
! if (!item_compare_numeric)
|
||||||
|
! {
|
||||||
|
! if (item_compare_ic)
|
||||||
|
! res = STRICMP(p1, p2);
|
||||||
|
! else
|
||||||
|
! res = STRCMP(p1, p2);
|
||||||
|
! }
|
||||||
|
else
|
||||||
|
! {
|
||||||
|
! double n1, n2;
|
||||||
|
! n1 = strtod((char *)p1, (char **)&p1);
|
||||||
|
! n2 = strtod((char *)p2, (char **)&p2);
|
||||||
|
! res = n1 == n2 ? 0 : n1 > n2 ? 1 : -1;
|
||||||
|
! }
|
||||||
|
vim_free(tofree1);
|
||||||
|
vim_free(tofree2);
|
||||||
|
return res;
|
||||||
|
***************
|
||||||
|
*** 17439,17444 ****
|
||||||
|
--- 17450,17456 ----
|
||||||
|
return; /* short list sorts pretty quickly */
|
||||||
|
|
||||||
|
item_compare_ic = FALSE;
|
||||||
|
+ item_compare_numeric = FALSE;
|
||||||
|
item_compare_func = NULL;
|
||||||
|
item_compare_selfdict = NULL;
|
||||||
|
if (argvars[1].v_type != VAR_UNKNOWN)
|
||||||
|
***************
|
||||||
|
*** 17457,17462 ****
|
||||||
|
--- 17469,17487 ----
|
||||||
|
item_compare_ic = TRUE;
|
||||||
|
else
|
||||||
|
item_compare_func = get_tv_string(&argvars[1]);
|
||||||
|
+ if (item_compare_func != NULL)
|
||||||
|
+ {
|
||||||
|
+ if (STRCMP(item_compare_func, "n") == 0)
|
||||||
|
+ {
|
||||||
|
+ item_compare_func = NULL;
|
||||||
|
+ item_compare_numeric = TRUE;
|
||||||
|
+ }
|
||||||
|
+ else if (STRCMP(item_compare_func, "i") == 0)
|
||||||
|
+ {
|
||||||
|
+ item_compare_func = NULL;
|
||||||
|
+ item_compare_ic = TRUE;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
if (argvars[2].v_type != VAR_UNKNOWN)
|
||||||
|
*** ../vim-7.4.340/src/testdir/test55.in 2014-03-25 18:23:27.062087691 +0100
|
||||||
|
--- src/testdir/test55.in 2014-06-25 17:20:47.006714486 +0200
|
||||||
|
***************
|
||||||
|
*** 332,337 ****
|
||||||
|
--- 332,342 ----
|
||||||
|
:$put =string(reverse(sort(l)))
|
||||||
|
:$put =string(sort(reverse(sort(l))))
|
||||||
|
:$put =string(uniq(sort(l)))
|
||||||
|
+ :let l=[7, 9, 18, 12, 22, 10.0e-16, -1, 0xff, 0, -0, 0.22, 'foo', 'FOOBAR',{}, []]
|
||||||
|
+ :$put =string(sort(copy(l), 'n'))
|
||||||
|
+ :$put =string(sort(copy(l), 1))
|
||||||
|
+ :$put =string(sort(copy(l), 'i'))
|
||||||
|
+ :$put =string(sort(copy(l)))
|
||||||
|
:"
|
||||||
|
:" splitting a string to a List
|
||||||
|
:$put =string(split(' aa bb '))
|
||||||
|
*** ../vim-7.4.340/src/testdir/test55.ok 2014-03-25 18:23:27.062087691 +0100
|
||||||
|
--- src/testdir/test55.ok 2014-06-25 17:23:31.382720704 +0200
|
||||||
|
***************
|
||||||
|
*** 101,106 ****
|
||||||
|
--- 101,110 ----
|
||||||
|
[[0, 1, 2], [0, 1, 2], 4, 2, 2, 1.5, 'xaaa', 'x8', 'foo6', 'foo', 'foo', 'A11', '-0']
|
||||||
|
['-0', 'A11', 'foo', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 2, 4, [0, 1, 2], [0, 1, 2]]
|
||||||
|
['-0', 'A11', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 4, [0, 1, 2]]
|
||||||
|
+ [-1, 0, 0, 'foo', 'FOOBAR', {}, [], 1.0e-15, 0.22, 7, 9, 12, 18, 22, 255]
|
||||||
|
+ ['foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
+ ['foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
+ ['FOOBAR', 'foo', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
['aa', 'bb']
|
||||||
|
['aa', 'bb']
|
||||||
|
['', 'aa', 'bb', '']
|
||||||
|
*** ../vim-7.4.340/src/version.c 2014-06-25 15:02:29.250400570 +0200
|
||||||
|
--- src/version.c 2014-06-25 16:46:45.438637250 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 341,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
We do not stumble over mountains, but over molehills.
|
||||||
|
Confucius
|
||||||
|
|
||||||
|
/// 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 ///
|
67
7.4.342
Normal file
67
7.4.342
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.342
|
||||||
|
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.4.342
|
||||||
|
Problem: Clang gives warnings.
|
||||||
|
Solution: Add an else block. (Dominique Pelle)
|
||||||
|
Files: src/gui_beval.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.341/src/gui_beval.c 2013-05-06 04:06:04.000000000 +0200
|
||||||
|
--- src/gui_beval.c 2014-06-25 17:40:40.818759649 +0200
|
||||||
|
***************
|
||||||
|
*** 1193,1203 ****
|
||||||
|
XmFontList fl;
|
||||||
|
|
||||||
|
fl = gui_motif_fontset2fontlist(&gui.tooltip_fontset);
|
||||||
|
! if (fl != NULL)
|
||||||
|
{
|
||||||
|
! XmStringExtent(fl, s, &w, &h);
|
||||||
|
! XmFontListFree(fl);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
w += gui.border_offset << 1;
|
||||||
|
h += gui.border_offset << 1;
|
||||||
|
--- 1193,1205 ----
|
||||||
|
XmFontList fl;
|
||||||
|
|
||||||
|
fl = gui_motif_fontset2fontlist(&gui.tooltip_fontset);
|
||||||
|
! if (fl == NULL)
|
||||||
|
{
|
||||||
|
! XmStringFree(s);
|
||||||
|
! return;
|
||||||
|
}
|
||||||
|
+ XmStringExtent(fl, s, &w, &h);
|
||||||
|
+ XmFontListFree(fl);
|
||||||
|
}
|
||||||
|
w += gui.border_offset << 1;
|
||||||
|
h += gui.border_offset << 1;
|
||||||
|
*** ../vim-7.4.341/src/version.c 2014-06-25 17:31:04.942737863 +0200
|
||||||
|
--- src/version.c 2014-06-25 17:40:56.902760258 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 342,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
CUSTOMER: Well, can you hang around a couple of minutes? He won't be
|
||||||
|
long.
|
||||||
|
MORTICIAN: Naaah, I got to go on to Robinson's -- they've lost nine today.
|
||||||
|
CUSTOMER: Well, when is your next round?
|
||||||
|
MORTICIAN: Thursday.
|
||||||
|
DEAD PERSON: I think I'll go for a walk.
|
||||||
|
The Quest for the Holy Grail (Monty Python)
|
||||||
|
|
||||||
|
/// 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 ///
|
60
7.4.343
Normal file
60
7.4.343
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.343
|
||||||
|
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.4.343
|
||||||
|
Problem: matchdelete() does not always update the right lines.
|
||||||
|
Solution: Fix off-by-one error. (Ozaki Kiichi)
|
||||||
|
Files: src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.342/src/window.c 2014-06-18 21:20:07.236377308 +0200
|
||||||
|
--- src/window.c 2014-06-25 17:55:34.190793447 +0200
|
||||||
|
***************
|
||||||
|
*** 6891,6898 ****
|
||||||
|
}
|
||||||
|
if (toplnum == 0 || lnum < toplnum)
|
||||||
|
toplnum = lnum;
|
||||||
|
! if (botlnum == 0 || lnum > botlnum)
|
||||||
|
! botlnum = lnum;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Calculate top and bottom lines for redrawing area */
|
||||||
|
--- 6891,6898 ----
|
||||||
|
}
|
||||||
|
if (toplnum == 0 || lnum < toplnum)
|
||||||
|
toplnum = lnum;
|
||||||
|
! if (botlnum == 0 || lnum >= botlnum)
|
||||||
|
! botlnum = lnum + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Calculate top and bottom lines for redrawing area */
|
||||||
|
*** ../vim-7.4.342/src/version.c 2014-06-25 17:44:45.850768919 +0200
|
||||||
|
--- src/version.c 2014-06-25 17:54:14.258790423 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 343,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
CUSTOMER: You're not fooling anyone y'know. Look, isn't there something
|
||||||
|
you can do?
|
||||||
|
DEAD PERSON: I feel happy... I feel happy.
|
||||||
|
[whop]
|
||||||
|
CUSTOMER: Ah, thanks very much.
|
||||||
|
MORTICIAN: Not at all. See you on Thursday.
|
||||||
|
CUSTOMER: Right.
|
||||||
|
The Quest for the Holy Grail (Monty Python)
|
||||||
|
|
||||||
|
/// 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 ///
|
180
7.4.344
Normal file
180
7.4.344
Normal file
@ -0,0 +1,180 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.344
|
||||||
|
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.4.344
|
||||||
|
Problem: Unessecary initializations and other things related to
|
||||||
|
matchaddpos().
|
||||||
|
Solution: Code cleanup. (Alexey Radkov)
|
||||||
|
Files: runtime/doc/eval.txt, src/screen.c, src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.343/runtime/doc/eval.txt 2014-06-25 17:31:04.934737863 +0200
|
||||||
|
--- runtime/doc/eval.txt 2014-06-25 18:08:50.790823583 +0200
|
||||||
|
***************
|
||||||
|
*** 4353,4369 ****
|
||||||
|
required, for example to highlight matching parentheses.
|
||||||
|
|
||||||
|
The list {pos} can contain one of these items:
|
||||||
|
! - A number. This while line will be highlighted. The first
|
||||||
|
line has number 1.
|
||||||
|
- A list with one number, e.g., [23]. The whole line with this
|
||||||
|
number will be highlighted.
|
||||||
|
- A list with two numbers, e.g., [23, 11]. The first number is
|
||||||
|
! the line number, the second one the column number (first
|
||||||
|
! column is 1). The character at this position will be
|
||||||
|
! highlighted.
|
||||||
|
- A list with three numbers, e.g., [23, 11, 3]. As above, but
|
||||||
|
! the third number gives the length of the highlight in screen
|
||||||
|
! cells.
|
||||||
|
|
||||||
|
The maximum number of positions is 8.
|
||||||
|
|
||||||
|
--- 4391,4407 ----
|
||||||
|
required, for example to highlight matching parentheses.
|
||||||
|
|
||||||
|
The list {pos} can contain one of these items:
|
||||||
|
! - A number. This whole line will be highlighted. The first
|
||||||
|
line has number 1.
|
||||||
|
- A list with one number, e.g., [23]. The whole line with this
|
||||||
|
number will be highlighted.
|
||||||
|
- A list with two numbers, e.g., [23, 11]. The first number is
|
||||||
|
! the line number, the second one is the column number (first
|
||||||
|
! column is 1, the value must correspond to the byte index as
|
||||||
|
! |col()| would return). The character at this position will
|
||||||
|
! be highlighted.
|
||||||
|
- A list with three numbers, e.g., [23, 11, 3]. As above, but
|
||||||
|
! the third number gives the length of the highlight in bytes.
|
||||||
|
|
||||||
|
The maximum number of positions is 8.
|
||||||
|
|
||||||
|
*** ../vim-7.4.343/src/screen.c 2014-06-25 14:39:35.110348584 +0200
|
||||||
|
--- src/screen.c 2014-06-25 18:10:11.906826652 +0200
|
||||||
|
***************
|
||||||
|
*** 7531,7537 ****
|
||||||
|
colnr_T mincol; /* minimal column for a match */
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
! int bot = -1;
|
||||||
|
|
||||||
|
shl->lnum = 0;
|
||||||
|
for (i = posmatch->cur; i < MAXPOSMATCH; i++)
|
||||||
|
--- 7531,7537 ----
|
||||||
|
colnr_T mincol; /* minimal column for a match */
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
! int bot = -1;
|
||||||
|
|
||||||
|
shl->lnum = 0;
|
||||||
|
for (i = posmatch->cur; i < MAXPOSMATCH; i++)
|
||||||
|
*** ../vim-7.4.343/src/window.c 2014-06-25 17:58:07.346799241 +0200
|
||||||
|
--- src/window.c 2014-06-25 18:10:45.698827930 +0200
|
||||||
|
***************
|
||||||
|
*** 6813,6819 ****
|
||||||
|
m->id = id;
|
||||||
|
m->priority = prio;
|
||||||
|
m->pattern = pat == NULL ? NULL : vim_strsave(pat);
|
||||||
|
- m->pos.cur = 0;
|
||||||
|
m->hlg_id = hlg_id;
|
||||||
|
m->match.regprog = regprog;
|
||||||
|
m->match.rmm_ic = FALSE;
|
||||||
|
--- 6813,6818 ----
|
||||||
|
***************
|
||||||
|
*** 6827,6833 ****
|
||||||
|
listitem_T *li;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
! for (i = 0, li = pos_list->lv_first; i < MAXPOSMATCH;
|
||||||
|
i++, li = li->li_next)
|
||||||
|
{
|
||||||
|
linenr_T lnum = 0;
|
||||||
|
--- 6826,6832 ----
|
||||||
|
listitem_T *li;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
! for (i = 0, li = pos_list->lv_first; li != NULL && i < MAXPOSMATCH;
|
||||||
|
i++, li = li->li_next)
|
||||||
|
{
|
||||||
|
linenr_T lnum = 0;
|
||||||
|
***************
|
||||||
|
*** 6837,6847 ****
|
||||||
|
listitem_T *subli;
|
||||||
|
int error = FALSE;
|
||||||
|
|
||||||
|
- if (li == NULL)
|
||||||
|
- {
|
||||||
|
- m->pos.pos[i].lnum = 0;
|
||||||
|
- break;
|
||||||
|
- }
|
||||||
|
if (li->li_tv.v_type == VAR_LIST)
|
||||||
|
{
|
||||||
|
subl = li->li_tv.vval.v_list;
|
||||||
|
--- 6836,6841 ----
|
||||||
|
***************
|
||||||
|
*** 6853,6864 ****
|
||||||
|
lnum = get_tv_number_chk(&subli->li_tv, &error);
|
||||||
|
if (error == TRUE)
|
||||||
|
goto fail;
|
||||||
|
- m->pos.pos[i].lnum = lnum;
|
||||||
|
if (lnum == 0)
|
||||||
|
{
|
||||||
|
--i;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
subli = subli->li_next;
|
||||||
|
if (subli != NULL)
|
||||||
|
{
|
||||||
|
--- 6847,6858 ----
|
||||||
|
lnum = get_tv_number_chk(&subli->li_tv, &error);
|
||||||
|
if (error == TRUE)
|
||||||
|
goto fail;
|
||||||
|
if (lnum == 0)
|
||||||
|
{
|
||||||
|
--i;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
+ m->pos.pos[i].lnum = lnum;
|
||||||
|
subli = subli->li_next;
|
||||||
|
if (subli != NULL)
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 6879,6885 ****
|
||||||
|
--- 6873,6882 ----
|
||||||
|
else if (li->li_tv.v_type == VAR_NUMBER)
|
||||||
|
{
|
||||||
|
if (li->li_tv.vval.v_number == 0)
|
||||||
|
+ {
|
||||||
|
+ --i;
|
||||||
|
continue;
|
||||||
|
+ }
|
||||||
|
m->pos.pos[i].lnum = li->li_tv.vval.v_number;
|
||||||
|
m->pos.pos[i].col = 0;
|
||||||
|
m->pos.pos[i].len = 0;
|
||||||
|
*** ../vim-7.4.343/src/version.c 2014-06-25 17:58:07.346799241 +0200
|
||||||
|
--- src/version.c 2014-06-25 18:07:06.170819625 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 344,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
[clop clop]
|
||||||
|
MORTICIAN: Who's that then?
|
||||||
|
CUSTOMER: I don't know.
|
||||||
|
MORTICIAN: Must be a king.
|
||||||
|
CUSTOMER: Why?
|
||||||
|
MORTICIAN: He hasn't got shit all over him.
|
||||||
|
The Quest for the Holy Grail (Monty Python)
|
||||||
|
|
||||||
|
/// 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 ///
|
73
7.4.345
Normal file
73
7.4.345
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.345
|
||||||
|
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.4.345 (after 7.4.338)
|
||||||
|
Problem: Indent is not updated when deleting indent.
|
||||||
|
Solution: Remember changedtick.
|
||||||
|
Files: src/misc1.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.344/src/misc1.c 2014-06-25 14:39:35.106348584 +0200
|
||||||
|
--- src/misc1.c 2014-06-25 22:51:32.955465286 +0200
|
||||||
|
***************
|
||||||
|
*** 497,502 ****
|
||||||
|
--- 497,503 ----
|
||||||
|
static int prev_indent = 0; /* cached indent value */
|
||||||
|
static long prev_ts = 0L; /* cached tabstop value */
|
||||||
|
static char_u *prev_line = NULL; /* cached pointer to line */
|
||||||
|
+ static int prev_tick = 0; /* changedtick of cached value */
|
||||||
|
int bri = 0;
|
||||||
|
/* window width minus window margin space, i.e. what rests for text */
|
||||||
|
const int eff_wwidth = W_WIDTH(wp)
|
||||||
|
***************
|
||||||
|
*** 505,514 ****
|
||||||
|
? number_width(wp) + 1 : 0);
|
||||||
|
|
||||||
|
/* used cached indent, unless pointer or 'tabstop' changed */
|
||||||
|
! if (prev_line != line || prev_ts != wp->w_buffer->b_p_ts)
|
||||||
|
{
|
||||||
|
prev_line = line;
|
||||||
|
prev_ts = wp->w_buffer->b_p_ts;
|
||||||
|
prev_indent = get_indent_str(line,
|
||||||
|
(int)wp->w_buffer->b_p_ts, wp->w_p_list) + wp->w_p_brishift;
|
||||||
|
}
|
||||||
|
--- 506,517 ----
|
||||||
|
? number_width(wp) + 1 : 0);
|
||||||
|
|
||||||
|
/* used cached indent, unless pointer or 'tabstop' changed */
|
||||||
|
! if (prev_line != line || prev_ts != wp->w_buffer->b_p_ts
|
||||||
|
! || prev_tick != wp->w_buffer->b_changedtick)
|
||||||
|
{
|
||||||
|
prev_line = line;
|
||||||
|
prev_ts = wp->w_buffer->b_p_ts;
|
||||||
|
+ prev_tick = wp->w_buffer->b_changedtick;
|
||||||
|
prev_indent = get_indent_str(line,
|
||||||
|
(int)wp->w_buffer->b_p_ts, wp->w_p_list) + wp->w_p_brishift;
|
||||||
|
}
|
||||||
|
*** ../vim-7.4.344/src/version.c 2014-06-25 18:15:18.446838249 +0200
|
||||||
|
--- src/version.c 2014-06-25 22:52:55.971468427 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 345,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
ARTHUR: Well, I can't just call you `Man'.
|
||||||
|
DENNIS: Well, you could say `Dennis'.
|
||||||
|
ARTHUR: Well, I didn't know you were called `Dennis.'
|
||||||
|
DENNIS: Well, you didn't bother to find out, did you?
|
||||||
|
The Quest for the Holy Grail (Monty Python)
|
||||||
|
|
||||||
|
/// 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 ///
|
61
7.4.346
Normal file
61
7.4.346
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.346
|
||||||
|
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.4.346 (after 7.4.338)
|
||||||
|
Problem: Indent is not updated when changing 'breakindentopt'. (itchyny)
|
||||||
|
Solution: Do not cache "brishift". (Christian Brabandt)
|
||||||
|
Files: src/misc1.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.345/src/misc1.c 2014-06-25 22:55:34.783474435 +0200
|
||||||
|
--- src/misc1.c 2014-06-26 21:15:46.970516542 +0200
|
||||||
|
***************
|
||||||
|
*** 513,523 ****
|
||||||
|
prev_ts = wp->w_buffer->b_p_ts;
|
||||||
|
prev_tick = wp->w_buffer->b_changedtick;
|
||||||
|
prev_indent = get_indent_str(line,
|
||||||
|
! (int)wp->w_buffer->b_p_ts, wp->w_p_list) + wp->w_p_brishift;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* indent minus the length of the showbreak string */
|
||||||
|
- bri = prev_indent;
|
||||||
|
if (wp->w_p_brisbr)
|
||||||
|
bri -= vim_strsize(p_sbr);
|
||||||
|
|
||||||
|
--- 513,523 ----
|
||||||
|
prev_ts = wp->w_buffer->b_p_ts;
|
||||||
|
prev_tick = wp->w_buffer->b_changedtick;
|
||||||
|
prev_indent = get_indent_str(line,
|
||||||
|
! (int)wp->w_buffer->b_p_ts, wp->w_p_list);
|
||||||
|
}
|
||||||
|
+ bri = prev_indent + wp->w_p_brishift;
|
||||||
|
|
||||||
|
/* indent minus the length of the showbreak string */
|
||||||
|
if (wp->w_p_brisbr)
|
||||||
|
bri -= vim_strsize(p_sbr);
|
||||||
|
|
||||||
|
*** ../vim-7.4.345/src/version.c 2014-06-25 22:55:34.783474435 +0200
|
||||||
|
--- src/version.c 2014-06-26 21:17:10.342519697 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 346,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
A computer programmer is a device for turning requirements into
|
||||||
|
undocumented features. It runs on cola, pizza and Dilbert cartoons.
|
||||||
|
Bram Moolenaar
|
||||||
|
|
||||||
|
/// 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 ///
|
74
7.4.347
Normal file
74
7.4.347
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.347
|
||||||
|
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.4.347
|
||||||
|
Problem: test55 fails on some systems.
|
||||||
|
Solution: Remove the elements that all result in zero and can end up in an
|
||||||
|
arbitrary position.
|
||||||
|
Files: src/testdir/test55.in, src/testdir/test55.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.346/src/testdir/test55.in 2014-06-25 17:31:04.942737863 +0200
|
||||||
|
--- src/testdir/test55.in 2014-06-26 22:25:33.078674909 +0200
|
||||||
|
***************
|
||||||
|
*** 332,339 ****
|
||||||
|
:$put =string(reverse(sort(l)))
|
||||||
|
:$put =string(sort(reverse(sort(l))))
|
||||||
|
:$put =string(uniq(sort(l)))
|
||||||
|
! :let l=[7, 9, 18, 12, 22, 10.0e-16, -1, 0xff, 0, -0, 0.22, 'foo', 'FOOBAR',{}, []]
|
||||||
|
:$put =string(sort(copy(l), 'n'))
|
||||||
|
:$put =string(sort(copy(l), 1))
|
||||||
|
:$put =string(sort(copy(l), 'i'))
|
||||||
|
:$put =string(sort(copy(l)))
|
||||||
|
--- 332,340 ----
|
||||||
|
:$put =string(reverse(sort(l)))
|
||||||
|
:$put =string(sort(reverse(sort(l))))
|
||||||
|
:$put =string(uniq(sort(l)))
|
||||||
|
! :let l=[7, 9, 18, 12, 22, 10.0e-16, -1, 0xff, 0.22, 'foo']
|
||||||
|
:$put =string(sort(copy(l), 'n'))
|
||||||
|
+ :let l=[7, 9, 18, 12, 22, 10.0e-16, -1, 0xff, 0, -0, 0.22, 'foo', 'FOOBAR',{}, []]
|
||||||
|
:$put =string(sort(copy(l), 1))
|
||||||
|
:$put =string(sort(copy(l), 'i'))
|
||||||
|
:$put =string(sort(copy(l)))
|
||||||
|
*** ../vim-7.4.346/src/testdir/test55.ok 2014-06-25 17:31:04.942737863 +0200
|
||||||
|
--- src/testdir/test55.ok 2014-06-26 22:26:38.662677390 +0200
|
||||||
|
***************
|
||||||
|
*** 101,107 ****
|
||||||
|
[[0, 1, 2], [0, 1, 2], 4, 2, 2, 1.5, 'xaaa', 'x8', 'foo6', 'foo', 'foo', 'A11', '-0']
|
||||||
|
['-0', 'A11', 'foo', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 2, 4, [0, 1, 2], [0, 1, 2]]
|
||||||
|
['-0', 'A11', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 4, [0, 1, 2]]
|
||||||
|
! [-1, 0, 0, 'foo', 'FOOBAR', {}, [], 1.0e-15, 0.22, 7, 9, 12, 18, 22, 255]
|
||||||
|
['foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
['foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
['FOOBAR', 'foo', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
--- 101,107 ----
|
||||||
|
[[0, 1, 2], [0, 1, 2], 4, 2, 2, 1.5, 'xaaa', 'x8', 'foo6', 'foo', 'foo', 'A11', '-0']
|
||||||
|
['-0', 'A11', 'foo', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 2, 4, [0, 1, 2], [0, 1, 2]]
|
||||||
|
['-0', 'A11', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 4, [0, 1, 2]]
|
||||||
|
! [-1, 'foo', 1.0e-15, 0.22, 7, 9, 12, 18, 22, 255]
|
||||||
|
['foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
['foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
['FOOBAR', 'foo', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
*** ../vim-7.4.346/src/version.c 2014-06-26 21:24:53.134537205 +0200
|
||||||
|
--- src/version.c 2014-06-26 22:28:15.402681050 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 347,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Witches prefer brooms: vacuum-cleaners need extension cords!
|
||||||
|
|
||||||
|
/// 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 ///
|
58
7.4.348
Normal file
58
7.4.348
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.348
|
||||||
|
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.4.348
|
||||||
|
Problem: When using "J1" in 'cinoptions' a line below a continuation line
|
||||||
|
gets too much indent.
|
||||||
|
Solution: Fix parenthesis in condition.
|
||||||
|
Files: src/misc1.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.347/src/misc1.c 2014-06-26 21:24:53.134537205 +0200
|
||||||
|
--- src/misc1.c 2014-07-02 16:58:08.854208322 +0200
|
||||||
|
***************
|
||||||
|
*** 7497,7505 ****
|
||||||
|
* ldfd) {
|
||||||
|
* }
|
||||||
|
*/
|
||||||
|
! if (curbuf->b_ind_js || (curbuf->b_ind_keep_case_label
|
||||||
|
! && cin_iscase(skipwhite(ml_get_curline()), FALSE)))
|
||||||
|
amount = get_indent();
|
||||||
|
else
|
||||||
|
amount = skip_label(lnum, &l);
|
||||||
|
|
||||||
|
--- 7497,7507 ----
|
||||||
|
* ldfd) {
|
||||||
|
* }
|
||||||
|
*/
|
||||||
|
! if ((curbuf->b_ind_js || curbuf->b_ind_keep_case_label)
|
||||||
|
! && cin_iscase(skipwhite(ml_get_curline()), FALSE))
|
||||||
|
amount = get_indent();
|
||||||
|
+ else if (curbuf->b_ind_js)
|
||||||
|
+ amount = get_indent_lnum(lnum);
|
||||||
|
else
|
||||||
|
amount = skip_label(lnum, &l);
|
||||||
|
|
||||||
|
*** ../vim-7.4.347/src/version.c 2014-06-26 22:33:47.850693627 +0200
|
||||||
|
--- src/version.c 2014-07-02 16:46:14.934197383 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 348,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
5 out of 4 people have trouble with fractions.
|
||||||
|
|
||||||
|
/// 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 ///
|
111
7.4.349
Normal file
111
7.4.349
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.349
|
||||||
|
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.4.349
|
||||||
|
Problem: When there are matches to highlight the whole window is redrawn,
|
||||||
|
which is slow.
|
||||||
|
Solution: Only redraw everything when lines were inserted or deleted.
|
||||||
|
Reset b_mod_xlines when needed. (Alexey Radkov)
|
||||||
|
Files: src/screen.c, src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.348/src/screen.c 2014-06-25 18:15:18.446838249 +0200
|
||||||
|
--- src/screen.c 2014-06-28 15:35:18.868836570 +0200
|
||||||
|
***************
|
||||||
|
*** 1769,1776 ****
|
||||||
|
syntax_check_changed(lnum)))
|
||||||
|
#endif
|
||||||
|
#ifdef FEAT_SEARCH_EXTRA
|
||||||
|
! /* match in fixed position might need redraw */
|
||||||
|
! || wp->w_match_head != NULL
|
||||||
|
#endif
|
||||||
|
)))))
|
||||||
|
{
|
||||||
|
--- 1769,1778 ----
|
||||||
|
syntax_check_changed(lnum)))
|
||||||
|
#endif
|
||||||
|
#ifdef FEAT_SEARCH_EXTRA
|
||||||
|
! /* match in fixed position might need redraw
|
||||||
|
! * if lines were inserted or deleted */
|
||||||
|
! || (wp->w_match_head != NULL
|
||||||
|
! && buf->b_mod_xlines != 0)
|
||||||
|
#endif
|
||||||
|
)))))
|
||||||
|
{
|
||||||
|
*** ../vim-7.4.348/src/window.c 2014-06-25 18:15:18.446838249 +0200
|
||||||
|
--- src/window.c 2014-06-28 15:38:51.952839835 +0200
|
||||||
|
***************
|
||||||
|
*** 6904,6915 ****
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
wp->w_buffer->b_mod_top = toplnum;
|
||||||
|
wp->w_buffer->b_mod_bot = botlnum;
|
||||||
|
}
|
||||||
|
m->pos.toplnum = toplnum;
|
||||||
|
m->pos.botlnum = botlnum;
|
||||||
|
- wp->w_buffer->b_mod_set = TRUE;
|
||||||
|
rtype = VALID;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
--- 6904,6916 ----
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
+ wp->w_buffer->b_mod_set = TRUE;
|
||||||
|
wp->w_buffer->b_mod_top = toplnum;
|
||||||
|
wp->w_buffer->b_mod_bot = botlnum;
|
||||||
|
+ wp->w_buffer->b_mod_xlines = 0;
|
||||||
|
}
|
||||||
|
m->pos.toplnum = toplnum;
|
||||||
|
m->pos.botlnum = botlnum;
|
||||||
|
rtype = VALID;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
***************
|
||||||
|
*** 6986,6995 ****
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
wp->w_buffer->b_mod_top = cur->pos.toplnum;
|
||||||
|
wp->w_buffer->b_mod_bot = cur->pos.botlnum;
|
||||||
|
}
|
||||||
|
- wp->w_buffer->b_mod_set = TRUE;
|
||||||
|
rtype = VALID;
|
||||||
|
}
|
||||||
|
vim_free(cur);
|
||||||
|
--- 6987,6997 ----
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
+ wp->w_buffer->b_mod_set = TRUE;
|
||||||
|
wp->w_buffer->b_mod_top = cur->pos.toplnum;
|
||||||
|
wp->w_buffer->b_mod_bot = cur->pos.botlnum;
|
||||||
|
+ wp->w_buffer->b_mod_xlines = 0;
|
||||||
|
}
|
||||||
|
rtype = VALID;
|
||||||
|
}
|
||||||
|
vim_free(cur);
|
||||||
|
*** ../vim-7.4.348/src/version.c 2014-07-02 17:02:29.726212319 +0200
|
||||||
|
--- src/version.c 2014-07-02 17:15:58.646224714 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 349,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Trees moving back and forth is what makes the wind blow.
|
||||||
|
|
||||||
|
/// 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 ///
|
139
7.4.350
Normal file
139
7.4.350
Normal file
@ -0,0 +1,139 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.350
|
||||||
|
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.4.350
|
||||||
|
Problem: Using C indenting for Javascript does not work well for a {} block
|
||||||
|
inside parenthesis.
|
||||||
|
Solution: When looking for a matching paren ignore one that is before the
|
||||||
|
start of a {} block.
|
||||||
|
Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.349/src/misc1.c 2014-07-02 17:02:29.722212319 +0200
|
||||||
|
--- src/misc1.c 2014-07-02 18:09:39.670274070 +0200
|
||||||
|
***************
|
||||||
|
*** 6614,6620 ****
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
! * Find the matching '(', failing if it is in a comment.
|
||||||
|
* Return NULL if no match found.
|
||||||
|
*/
|
||||||
|
static pos_T *
|
||||||
|
--- 6614,6620 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
! * Find the matching '(', ignoring it if it is in a comment.
|
||||||
|
* Return NULL if no match found.
|
||||||
|
*/
|
||||||
|
static pos_T *
|
||||||
|
***************
|
||||||
|
*** 6645,6650 ****
|
||||||
|
--- 6645,6676 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
+ * Find the matching '(', ignoring it if it is in a comment or before an
|
||||||
|
+ * unmatched {.
|
||||||
|
+ * Return NULL if no match found.
|
||||||
|
+ */
|
||||||
|
+ static pos_T *
|
||||||
|
+ find_match_paren_after_brace(ind_maxparen) /* XXX */
|
||||||
|
+ int ind_maxparen;
|
||||||
|
+ {
|
||||||
|
+ pos_T *trypos = find_match_paren(ind_maxparen);
|
||||||
|
+
|
||||||
|
+ if (trypos != NULL)
|
||||||
|
+ {
|
||||||
|
+ pos_T *tryposBrace = find_start_brace();
|
||||||
|
+
|
||||||
|
+ /* If both an unmatched '(' and '{' is found. Ignore the '('
|
||||||
|
+ * position if the '{' is further down. */
|
||||||
|
+ if (tryposBrace != NULL
|
||||||
|
+ && (trypos->lnum != tryposBrace->lnum
|
||||||
|
+ ? trypos->lnum < tryposBrace->lnum
|
||||||
|
+ : trypos->col < tryposBrace->col))
|
||||||
|
+ trypos = NULL;
|
||||||
|
+ }
|
||||||
|
+ return trypos;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
* Return ind_maxparen corrected for the difference in line number between the
|
||||||
|
* cursor position and "startpos". This makes sure that searching for a
|
||||||
|
* matching paren above the cursor line doesn't find a match because of
|
||||||
|
***************
|
||||||
|
*** 7419,7425 ****
|
||||||
|
{
|
||||||
|
curwin->w_cursor.lnum = our_paren_pos.lnum;
|
||||||
|
curwin->w_cursor.col = col;
|
||||||
|
! if (find_match_paren(curbuf->b_ind_maxparen) != NULL)
|
||||||
|
amount += curbuf->b_ind_unclosed2;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
--- 7445,7452 ----
|
||||||
|
{
|
||||||
|
curwin->w_cursor.lnum = our_paren_pos.lnum;
|
||||||
|
curwin->w_cursor.col = col;
|
||||||
|
! if (find_match_paren_after_brace(curbuf->b_ind_maxparen)
|
||||||
|
! != NULL)
|
||||||
|
amount += curbuf->b_ind_unclosed2;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
*** ../vim-7.4.349/src/testdir/test3.in 2013-03-07 12:39:35.000000000 +0100
|
||||||
|
--- src/testdir/test3.in 2014-07-02 18:08:06.430272641 +0200
|
||||||
|
***************
|
||||||
|
*** 1950,1955 ****
|
||||||
|
--- 1950,1959 ----
|
||||||
|
JSSTART
|
||||||
|
(function($){
|
||||||
|
|
||||||
|
+ if (cond &&
|
||||||
|
+ cond) {
|
||||||
|
+ stmt;
|
||||||
|
+ }
|
||||||
|
var class_name='myclass';
|
||||||
|
|
||||||
|
function private_method() {
|
||||||
|
*** ../vim-7.4.349/src/testdir/test3.ok 2013-03-07 12:40:03.000000000 +0100
|
||||||
|
--- src/testdir/test3.ok 2014-07-02 18:09:14.470273684 +0200
|
||||||
|
***************
|
||||||
|
*** 1728,1733 ****
|
||||||
|
--- 1728,1737 ----
|
||||||
|
JSSTART
|
||||||
|
(function($){
|
||||||
|
|
||||||
|
+ if (cond &&
|
||||||
|
+ cond) {
|
||||||
|
+ stmt;
|
||||||
|
+ }
|
||||||
|
var class_name='myclass';
|
||||||
|
|
||||||
|
function private_method() {
|
||||||
|
*** ../vim-7.4.349/src/version.c 2014-07-02 17:16:51.334225522 +0200
|
||||||
|
--- src/version.c 2014-07-02 18:06:31.330271184 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 350,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
FATHER: You killed eight wedding guests in all!
|
||||||
|
LAUNCELOT: Er, Well ... the thing is ... I thought your son was a lady.
|
||||||
|
FATHER: I can understand that.
|
||||||
|
"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 ///
|
160
7.4.351
Normal file
160
7.4.351
Normal file
@ -0,0 +1,160 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.351
|
||||||
|
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.4.351
|
||||||
|
Problem: sort() is not stable.
|
||||||
|
Solution: When the items are identical, compare the pointers.
|
||||||
|
Files: src/eval.c, src/testdir/test55.in, src/testdir/test55.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.350/src/eval.c 2014-06-25 17:31:04.942737863 +0200
|
||||||
|
--- src/eval.c 2014-07-02 18:52:19.102313288 +0200
|
||||||
|
***************
|
||||||
|
*** 17334,17339 ****
|
||||||
|
--- 17334,17340 ----
|
||||||
|
static char_u *item_compare_func;
|
||||||
|
static dict_T *item_compare_selfdict;
|
||||||
|
static int item_compare_func_err;
|
||||||
|
+ static int item_compare_keep_zero;
|
||||||
|
static void do_sort_uniq __ARGS((typval_T *argvars, typval_T *rettv, int sort));
|
||||||
|
#define ITEM_COMPARE_FAIL 999
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 17374,17379 ****
|
||||||
|
--- 17375,17386 ----
|
||||||
|
n2 = strtod((char *)p2, (char **)&p2);
|
||||||
|
res = n1 == n2 ? 0 : n1 > n2 ? 1 : -1;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ /* When the result would be zero, compare the pointers themselves. Makes
|
||||||
|
+ * the sort stable. */
|
||||||
|
+ if (res == 0 && !item_compare_keep_zero)
|
||||||
|
+ res = s1 > s2 ? 1 : -1;
|
||||||
|
+
|
||||||
|
vim_free(tofree1);
|
||||||
|
vim_free(tofree2);
|
||||||
|
return res;
|
||||||
|
***************
|
||||||
|
*** 17396,17402 ****
|
||||||
|
if (item_compare_func_err)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
! /* copy the values. This is needed to be able to set v_lock to VAR_FIXED
|
||||||
|
* in the copy without changing the original list items. */
|
||||||
|
copy_tv(&(*(listitem_T **)s1)->li_tv, &argv[0]);
|
||||||
|
copy_tv(&(*(listitem_T **)s2)->li_tv, &argv[1]);
|
||||||
|
--- 17403,17409 ----
|
||||||
|
if (item_compare_func_err)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
! /* Copy the values. This is needed to be able to set v_lock to VAR_FIXED
|
||||||
|
* in the copy without changing the original list items. */
|
||||||
|
copy_tv(&(*(listitem_T **)s1)->li_tv, &argv[0]);
|
||||||
|
copy_tv(&(*(listitem_T **)s2)->li_tv, &argv[1]);
|
||||||
|
***************
|
||||||
|
*** 17415,17420 ****
|
||||||
|
--- 17422,17433 ----
|
||||||
|
if (item_compare_func_err)
|
||||||
|
res = ITEM_COMPARE_FAIL; /* return value has wrong type */
|
||||||
|
clear_tv(&rettv);
|
||||||
|
+
|
||||||
|
+ /* When the result would be zero, compare the pointers themselves. Makes
|
||||||
|
+ * the sort stable. */
|
||||||
|
+ if (res == 0 && !item_compare_keep_zero)
|
||||||
|
+ res = s1 > s2 ? 1 : -1;
|
||||||
|
+
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 17509,17514 ****
|
||||||
|
--- 17522,17528 ----
|
||||||
|
ptrs[i++] = li;
|
||||||
|
|
||||||
|
item_compare_func_err = FALSE;
|
||||||
|
+ item_compare_keep_zero = FALSE;
|
||||||
|
/* test the compare function */
|
||||||
|
if (item_compare_func != NULL
|
||||||
|
&& item_compare2((void *)&ptrs[0], (void *)&ptrs[1])
|
||||||
|
***************
|
||||||
|
*** 17536,17541 ****
|
||||||
|
--- 17550,17556 ----
|
||||||
|
|
||||||
|
/* f_uniq(): ptrs will be a stack of items to remove */
|
||||||
|
item_compare_func_err = FALSE;
|
||||||
|
+ item_compare_keep_zero = TRUE;
|
||||||
|
item_compare_func_ptr = item_compare_func
|
||||||
|
? item_compare2 : item_compare;
|
||||||
|
|
||||||
|
*** ../vim-7.4.350/src/testdir/test55.in 2014-06-26 22:33:47.850693627 +0200
|
||||||
|
--- src/testdir/test55.in 2014-07-02 19:00:09.238320492 +0200
|
||||||
|
***************
|
||||||
|
*** 332,340 ****
|
||||||
|
:$put =string(reverse(sort(l)))
|
||||||
|
:$put =string(sort(reverse(sort(l))))
|
||||||
|
:$put =string(uniq(sort(l)))
|
||||||
|
! :let l=[7, 9, 18, 12, 22, 10.0e-16, -1, 0xff, 0.22, 'foo']
|
||||||
|
:$put =string(sort(copy(l), 'n'))
|
||||||
|
! :let l=[7, 9, 18, 12, 22, 10.0e-16, -1, 0xff, 0, -0, 0.22, 'foo', 'FOOBAR',{}, []]
|
||||||
|
:$put =string(sort(copy(l), 1))
|
||||||
|
:$put =string(sort(copy(l), 'i'))
|
||||||
|
:$put =string(sort(copy(l)))
|
||||||
|
--- 332,340 ----
|
||||||
|
:$put =string(reverse(sort(l)))
|
||||||
|
:$put =string(sort(reverse(sort(l))))
|
||||||
|
:$put =string(uniq(sort(l)))
|
||||||
|
! :let l=[7, 9, 'one', 18, 12, 22, 'two', 10.0e-16, -1, 'three', 0xff, 0.22, 'four']
|
||||||
|
:$put =string(sort(copy(l), 'n'))
|
||||||
|
! :let l=[7, 9, 18, 12, 22, 10.0e-16, -1, 0xff, 0, -0, 0.22, 'bar', 'BAR', 'Bar', 'Foo', 'FOO', 'foo', 'FOOBAR', {}, []]
|
||||||
|
:$put =string(sort(copy(l), 1))
|
||||||
|
:$put =string(sort(copy(l), 'i'))
|
||||||
|
:$put =string(sort(copy(l)))
|
||||||
|
*** ../vim-7.4.350/src/testdir/test55.ok 2014-06-26 22:33:47.850693627 +0200
|
||||||
|
--- src/testdir/test55.ok 2014-07-02 19:00:57.078321225 +0200
|
||||||
|
***************
|
||||||
|
*** 101,110 ****
|
||||||
|
[[0, 1, 2], [0, 1, 2], 4, 2, 2, 1.5, 'xaaa', 'x8', 'foo6', 'foo', 'foo', 'A11', '-0']
|
||||||
|
['-0', 'A11', 'foo', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 2, 4, [0, 1, 2], [0, 1, 2]]
|
||||||
|
['-0', 'A11', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 4, [0, 1, 2]]
|
||||||
|
! [-1, 'foo', 1.0e-15, 0.22, 7, 9, 12, 18, 22, 255]
|
||||||
|
! ['foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
! ['foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
! ['FOOBAR', 'foo', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
['aa', 'bb']
|
||||||
|
['aa', 'bb']
|
||||||
|
['', 'aa', 'bb', '']
|
||||||
|
--- 101,110 ----
|
||||||
|
[[0, 1, 2], [0, 1, 2], 4, 2, 2, 1.5, 'xaaa', 'x8', 'foo6', 'foo', 'foo', 'A11', '-0']
|
||||||
|
['-0', 'A11', 'foo', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 2, 4, [0, 1, 2], [0, 1, 2]]
|
||||||
|
['-0', 'A11', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 4, [0, 1, 2]]
|
||||||
|
! [-1, 'one', 'two', 'three', 'four', 1.0e-15, 0.22, 7, 9, 12, 18, 22, 255]
|
||||||
|
! ['bar', 'BAR', 'Bar', 'Foo', 'FOO', 'foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
! ['bar', 'BAR', 'Bar', 'Foo', 'FOO', 'foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
! ['BAR', 'Bar', 'FOO', 'FOOBAR', 'Foo', 'bar', 'foo', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
||||||
|
['aa', 'bb']
|
||||||
|
['aa', 'bb']
|
||||||
|
['', 'aa', 'bb', '']
|
||||||
|
*** ../vim-7.4.350/src/version.c 2014-07-02 18:27:44.662290695 +0200
|
||||||
|
--- src/version.c 2014-07-02 18:46:38.230308065 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 351,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
The early bird gets the worm. If you want something else for
|
||||||
|
breakfast, get up later.
|
||||||
|
|
||||||
|
/// 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 ///
|
101
7.4.352
Normal file
101
7.4.352
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.352
|
||||||
|
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.4.352
|
||||||
|
Problem: With 'linebreak' a tab causes missing line break.
|
||||||
|
Solution: Count a tab for what it's worth also for shorter lines.
|
||||||
|
(Christian Brabandt)
|
||||||
|
Files: src/charset.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.351/src/charset.c 2014-06-25 14:39:35.098348584 +0200
|
||||||
|
--- src/charset.c 2014-07-02 19:34:28.142352040 +0200
|
||||||
|
***************
|
||||||
|
*** 1078,1083 ****
|
||||||
|
--- 1078,1084 ----
|
||||||
|
int c;
|
||||||
|
int size;
|
||||||
|
colnr_T col2;
|
||||||
|
+ colnr_T col_adj = 0; /* col + screen size of tab */
|
||||||
|
colnr_T colmax;
|
||||||
|
int added;
|
||||||
|
# ifdef FEAT_MBYTE
|
||||||
|
***************
|
||||||
|
*** 1109,1114 ****
|
||||||
|
--- 1110,1117 ----
|
||||||
|
*/
|
||||||
|
size = win_chartabsize(wp, s, col);
|
||||||
|
c = *s;
|
||||||
|
+ if (tab_corr)
|
||||||
|
+ col_adj = size - 1;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If 'linebreak' set check at a blank before a non-blank if the line
|
||||||
|
***************
|
||||||
|
*** 1130,1141 ****
|
||||||
|
*/
|
||||||
|
numberextra = win_col_off(wp);
|
||||||
|
col2 = col;
|
||||||
|
! colmax = (colnr_T)(W_WIDTH(wp) - numberextra);
|
||||||
|
if (col >= colmax)
|
||||||
|
{
|
||||||
|
! n = colmax + win_col_off2(wp);
|
||||||
|
if (n > 0)
|
||||||
|
! colmax += (((col - colmax) / n) + 1) * n;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (;;)
|
||||||
|
--- 1133,1145 ----
|
||||||
|
*/
|
||||||
|
numberextra = win_col_off(wp);
|
||||||
|
col2 = col;
|
||||||
|
! colmax = (colnr_T)(W_WIDTH(wp) - numberextra - col_adj);
|
||||||
|
if (col >= colmax)
|
||||||
|
{
|
||||||
|
! colmax += col_adj;
|
||||||
|
! n = colmax + win_col_off2(wp);
|
||||||
|
if (n > 0)
|
||||||
|
! colmax += (((col - colmax) / n) + 1) * n - col_adj;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (;;)
|
||||||
|
***************
|
||||||
|
*** 1152,1158 ****
|
||||||
|
col2 += win_chartabsize(wp, s, col2);
|
||||||
|
if (col2 >= colmax) /* doesn't fit */
|
||||||
|
{
|
||||||
|
! size = colmax - col;
|
||||||
|
tab_corr = FALSE;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
--- 1156,1162 ----
|
||||||
|
col2 += win_chartabsize(wp, s, col2);
|
||||||
|
if (col2 >= colmax) /* doesn't fit */
|
||||||
|
{
|
||||||
|
! size = colmax - col + col_adj;
|
||||||
|
tab_corr = FALSE;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
*** ../vim-7.4.351/src/version.c 2014-07-02 19:06:14.686326091 +0200
|
||||||
|
--- src/version.c 2014-07-02 19:32:50.218350540 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 352,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
The early bird gets the worm. The second mouse gets the cheese.
|
||||||
|
|
||||||
|
/// 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 ///
|
446
7.4.353
Normal file
446
7.4.353
Normal file
@ -0,0 +1,446 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.353
|
||||||
|
Fcc: outbox
|
||||||
|
From: Bram Moolenaar <Bram@moolenaar.net>
|
||||||
|
Mime-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
------------
|
||||||
|
|
||||||
|
Patch 7.4.353
|
||||||
|
Problem: 'linebreak' doesn't work with the 'list' option.
|
||||||
|
Solution: Make it work. (Christian Brabandt)
|
||||||
|
Files: src/charset.c, src/screen.c,
|
||||||
|
src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
|
||||||
|
src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
|
||||||
|
src/testdir/Make_vms.mms, src/testdir/Makefile,
|
||||||
|
src/testdir/test_listlbr.in, src/testdir/test_listlbr.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.352/src/charset.c 2014-07-02 19:37:38.462354956 +0200
|
||||||
|
--- src/charset.c 2014-07-02 19:47:21.602363892 +0200
|
||||||
|
***************
|
||||||
|
*** 1120,1126 ****
|
||||||
|
if (wp->w_p_lbr
|
||||||
|
&& vim_isbreak(c)
|
||||||
|
&& !vim_isbreak(s[1])
|
||||||
|
- && !wp->w_p_list
|
||||||
|
&& wp->w_p_wrap
|
||||||
|
# ifdef FEAT_VERTSPLIT
|
||||||
|
&& wp->w_width != 0
|
||||||
|
--- 1120,1125 ----
|
||||||
|
*** ../vim-7.4.352/src/screen.c 2014-07-02 17:16:51.330225522 +0200
|
||||||
|
--- src/screen.c 2014-07-02 19:51:42.082367883 +0200
|
||||||
|
***************
|
||||||
|
*** 2843,2848 ****
|
||||||
|
--- 2843,2849 ----
|
||||||
|
char_u extra[18]; /* "%ld" and 'fdc' must fit in here */
|
||||||
|
int n_extra = 0; /* number of extra chars */
|
||||||
|
char_u *p_extra = NULL; /* string of extra chars, plus NUL */
|
||||||
|
+ char_u *p_extra_free = NULL; /* p_extra needs to be freed */
|
||||||
|
int c_extra = NUL; /* extra chars, all the same */
|
||||||
|
int extra_attr = 0; /* attributes when n_extra != 0 */
|
||||||
|
static char_u *at_end_str = (char_u *)""; /* used for p_extra when
|
||||||
|
***************
|
||||||
|
*** 4053,4058 ****
|
||||||
|
--- 4054,4064 ----
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
+ if (p_extra_free != NULL)
|
||||||
|
+ {
|
||||||
|
+ vim_free(p_extra_free);
|
||||||
|
+ p_extra_free = NULL;
|
||||||
|
+ }
|
||||||
|
/*
|
||||||
|
* Get a character from the line itself.
|
||||||
|
*/
|
||||||
|
***************
|
||||||
|
*** 4424,4431 ****
|
||||||
|
/*
|
||||||
|
* Found last space before word: check for line break.
|
||||||
|
*/
|
||||||
|
! if (wp->w_p_lbr && vim_isbreak(c) && !vim_isbreak(*ptr)
|
||||||
|
! && !wp->w_p_list)
|
||||||
|
{
|
||||||
|
char_u *p = ptr - (
|
||||||
|
# ifdef FEAT_MBYTE
|
||||||
|
--- 4430,4436 ----
|
||||||
|
/*
|
||||||
|
* Found last space before word: check for line break.
|
||||||
|
*/
|
||||||
|
! if (wp->w_p_lbr && vim_isbreak(c) && !vim_isbreak(*ptr))
|
||||||
|
{
|
||||||
|
char_u *p = ptr - (
|
||||||
|
# ifdef FEAT_MBYTE
|
||||||
|
***************
|
||||||
|
*** 4433,4439 ****
|
||||||
|
# endif
|
||||||
|
1);
|
||||||
|
/* TODO: is passing p for start of the line OK? */
|
||||||
|
! n_extra = win_lbr_chartabsize(wp, p, p, (colnr_T)vcol,
|
||||||
|
NULL) - 1;
|
||||||
|
c_extra = ' ';
|
||||||
|
if (vim_iswhite(c))
|
||||||
|
--- 4438,4444 ----
|
||||||
|
# endif
|
||||||
|
1);
|
||||||
|
/* TODO: is passing p for start of the line OK? */
|
||||||
|
! n_extra = win_lbr_chartabsize(wp, line, p, (colnr_T)vcol,
|
||||||
|
NULL) - 1;
|
||||||
|
c_extra = ' ';
|
||||||
|
if (vim_iswhite(c))
|
||||||
|
***************
|
||||||
|
*** 4443,4449 ****
|
||||||
|
/* See "Tab alignment" below. */
|
||||||
|
FIX_FOR_BOGUSCOLS;
|
||||||
|
#endif
|
||||||
|
! c = ' ';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
--- 4448,4455 ----
|
||||||
|
/* See "Tab alignment" below. */
|
||||||
|
FIX_FOR_BOGUSCOLS;
|
||||||
|
#endif
|
||||||
|
! if (!wp->w_p_list)
|
||||||
|
! c = ' ';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
***************
|
||||||
|
*** 4483,4491 ****
|
||||||
|
*/
|
||||||
|
if (c == TAB && (!wp->w_p_list || lcs_tab1))
|
||||||
|
{
|
||||||
|
/* tab amount depends on current column */
|
||||||
|
! n_extra = (int)wp->w_buffer->b_p_ts
|
||||||
|
- vcol % (int)wp->w_buffer->b_p_ts - 1;
|
||||||
|
#ifdef FEAT_CONCEAL
|
||||||
|
/* Tab alignment should be identical regardless of
|
||||||
|
* 'conceallevel' value. So tab compensates of all
|
||||||
|
--- 4489,4538 ----
|
||||||
|
*/
|
||||||
|
if (c == TAB && (!wp->w_p_list || lcs_tab1))
|
||||||
|
{
|
||||||
|
+ int tab_len = 0;
|
||||||
|
/* tab amount depends on current column */
|
||||||
|
! tab_len = (int)wp->w_buffer->b_p_ts
|
||||||
|
- vcol % (int)wp->w_buffer->b_p_ts - 1;
|
||||||
|
+ #ifdef FEAT_LINEBREAK
|
||||||
|
+ if (!wp->w_p_lbr)
|
||||||
|
+ #endif
|
||||||
|
+ /* tab amount depends on current column */
|
||||||
|
+ n_extra = tab_len;
|
||||||
|
+ #ifdef FEAT_LINEBREAK
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ char_u *p;
|
||||||
|
+ int len = n_extra;
|
||||||
|
+ int i;
|
||||||
|
+ int saved_nextra = n_extra;
|
||||||
|
+
|
||||||
|
+ /* if n_extra > 0, it gives the number of chars, to
|
||||||
|
+ * use for a tab, else we need to calculate the width
|
||||||
|
+ * for a tab */
|
||||||
|
+ #ifdef FEAT_MBYTE
|
||||||
|
+ len = (tab_len * mb_char2len(lcs_tab2));
|
||||||
|
+ if (n_extra > 0)
|
||||||
|
+ len += n_extra - tab_len;
|
||||||
|
+ #endif
|
||||||
|
+ c = lcs_tab1;
|
||||||
|
+ p = alloc((unsigned)(len + 1));
|
||||||
|
+ vim_memset(p, ' ', len);
|
||||||
|
+ p[len] = NUL;
|
||||||
|
+ p_extra_free = p;
|
||||||
|
+ for (i = 0; i < tab_len; i++)
|
||||||
|
+ {
|
||||||
|
+ #ifdef FEAT_MBYTE
|
||||||
|
+ mb_char2bytes(lcs_tab2, p);
|
||||||
|
+ p += mb_char2len(lcs_tab2);
|
||||||
|
+ n_extra += mb_char2len(lcs_tab2)
|
||||||
|
+ - (saved_nextra > 0 ? 1 : 0);
|
||||||
|
+ #else
|
||||||
|
+ p[i] = lcs_tab2;
|
||||||
|
+ #endif
|
||||||
|
+ }
|
||||||
|
+ p_extra = p_extra_free;
|
||||||
|
+ }
|
||||||
|
+ #endif
|
||||||
|
#ifdef FEAT_CONCEAL
|
||||||
|
/* Tab alignment should be identical regardless of
|
||||||
|
* 'conceallevel' value. So tab compensates of all
|
||||||
|
***************
|
||||||
|
*** 4501,4508 ****
|
||||||
|
if (wp->w_p_list)
|
||||||
|
{
|
||||||
|
c = lcs_tab1;
|
||||||
|
! c_extra = lcs_tab2;
|
||||||
|
! n_attr = n_extra + 1;
|
||||||
|
extra_attr = hl_attr(HLF_8);
|
||||||
|
saved_attr2 = char_attr; /* save current attr */
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
--- 4548,4560 ----
|
||||||
|
if (wp->w_p_list)
|
||||||
|
{
|
||||||
|
c = lcs_tab1;
|
||||||
|
! #ifdef FEAT_LINEBREAK
|
||||||
|
! if (wp->w_p_lbr)
|
||||||
|
! c_extra = NUL; /* using p_extra from above */
|
||||||
|
! else
|
||||||
|
! #endif
|
||||||
|
! c_extra = lcs_tab2;
|
||||||
|
! n_attr = tab_len + 1;
|
||||||
|
extra_attr = hl_attr(HLF_8);
|
||||||
|
saved_attr2 = char_attr; /* save current attr */
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
***************
|
||||||
|
*** 4598,4606 ****
|
||||||
|
if ((dy_flags & DY_UHEX) && wp->w_p_rl)
|
||||||
|
rl_mirror(p_extra); /* reverse "<12>" */
|
||||||
|
#endif
|
||||||
|
- n_extra = byte2cells(c) - 1;
|
||||||
|
c_extra = NUL;
|
||||||
|
! c = *p_extra++;
|
||||||
|
if (!attr_pri)
|
||||||
|
{
|
||||||
|
n_attr = n_extra + 1;
|
||||||
|
--- 4650,4674 ----
|
||||||
|
if ((dy_flags & DY_UHEX) && wp->w_p_rl)
|
||||||
|
rl_mirror(p_extra); /* reverse "<12>" */
|
||||||
|
#endif
|
||||||
|
c_extra = NUL;
|
||||||
|
! #ifdef FEAT_LINEBREAK
|
||||||
|
! if (wp->w_p_lbr)
|
||||||
|
! {
|
||||||
|
! char_u *p;
|
||||||
|
!
|
||||||
|
! c = *p_extra;
|
||||||
|
! p = alloc((unsigned)n_extra + 1);
|
||||||
|
! vim_memset(p, ' ', n_extra);
|
||||||
|
! STRNCPY(p, p_extra + 1, STRLEN(p_extra) - 1);
|
||||||
|
! p[n_extra] = NUL;
|
||||||
|
! p_extra_free = p_extra = p;
|
||||||
|
! }
|
||||||
|
! else
|
||||||
|
! #endif
|
||||||
|
! {
|
||||||
|
! n_extra = byte2cells(c) - 1;
|
||||||
|
! c = *p_extra++;
|
||||||
|
! }
|
||||||
|
if (!attr_pri)
|
||||||
|
{
|
||||||
|
n_attr = n_extra + 1;
|
||||||
|
*** ../vim-7.4.352/src/testdir/Make_amiga.mak 2014-06-25 14:39:35.110348584 +0200
|
||||||
|
--- src/testdir/Make_amiga.mak 2014-07-02 19:47:21.610363892 +0200
|
||||||
|
***************
|
||||||
|
*** 38,43 ****
|
||||||
|
--- 38,44 ----
|
||||||
|
test104.out test105.out test106.out test107.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
+ test_listlbr.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 165,169 ****
|
||||||
|
--- 166,171 ----
|
||||||
|
test107.out: test107.in
|
||||||
|
test_autoformat_join.out: test_autoformat_join.in
|
||||||
|
test_breakindent.out: test_breakindent.in
|
||||||
|
+ test_listlbr.out: test_listlbr.in
|
||||||
|
test_eval.out: test_eval.in
|
||||||
|
test_options.out: test_options.in
|
||||||
|
*** ../vim-7.4.352/src/testdir/Make_dos.mak 2014-06-25 14:39:35.110348584 +0200
|
||||||
|
--- src/testdir/Make_dos.mak 2014-07-02 19:47:21.610363892 +0200
|
||||||
|
***************
|
||||||
|
*** 37,42 ****
|
||||||
|
--- 37,43 ----
|
||||||
|
test105.out test106.out test107.out\
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
+ test_listlbr \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.352/src/testdir/Make_ming.mak 2014-06-25 14:39:35.110348584 +0200
|
||||||
|
--- src/testdir/Make_ming.mak 2014-07-02 19:47:21.610363892 +0200
|
||||||
|
***************
|
||||||
|
*** 57,62 ****
|
||||||
|
--- 57,63 ----
|
||||||
|
test105.out test106.out test107.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
+ test_listlbr.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.352/src/testdir/Make_os2.mak 2014-06-25 14:39:35.114348584 +0200
|
||||||
|
--- src/testdir/Make_os2.mak 2014-07-02 19:47:21.610363892 +0200
|
||||||
|
***************
|
||||||
|
*** 40,45 ****
|
||||||
|
--- 40,46 ----
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
+ test_listlbr.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
.SUFFIXES: .in .out
|
||||||
|
*** ../vim-7.4.352/src/testdir/Make_vms.mms 2014-06-25 14:39:35.114348584 +0200
|
||||||
|
--- src/testdir/Make_vms.mms 2014-07-02 19:47:21.610363892 +0200
|
||||||
|
***************
|
||||||
|
*** 98,103 ****
|
||||||
|
--- 98,104 ----
|
||||||
|
test105.out test106.out test107.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
+ test_listlbr.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.352/src/testdir/Makefile 2014-06-25 14:39:35.114348584 +0200
|
||||||
|
--- src/testdir/Makefile 2014-07-02 19:47:21.610363892 +0200
|
||||||
|
***************
|
||||||
|
*** 35,40 ****
|
||||||
|
--- 35,41 ----
|
||||||
|
test104.out test105.out test106.out test107.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
+ test_listlbr.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.352/src/testdir/test_listlbr.in 2014-07-02 19:58:25.642374067 +0200
|
||||||
|
--- src/testdir/test_listlbr.in 2014-07-02 19:47:21.610363892 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,62 ----
|
||||||
|
+ Test for linebreak and list option
|
||||||
|
+
|
||||||
|
+ STARTTEST
|
||||||
|
+ :so small.vim
|
||||||
|
+ :if !exists("+linebreak") | e! test.ok | w! test.out | qa! | endif
|
||||||
|
+ :10new|:vsp|:vert resize 20
|
||||||
|
+ :put =\"\tabcdef hijklmn\tpqrstuvwxyz\u00a01060ABCDEFGHIJKLMNOP \"
|
||||||
|
+ :norm! zt
|
||||||
|
+ :set ts=4 sw=4 sts=4 linebreak sbr=+ wrap
|
||||||
|
+ :fu! ScreenChar(width)
|
||||||
|
+ : let c=''
|
||||||
|
+ : for j in range(1,4)
|
||||||
|
+ : for i in range(1,a:width)
|
||||||
|
+ : let c.=nr2char(screenchar(j, i))
|
||||||
|
+ : endfor
|
||||||
|
+ : let c.="\n"
|
||||||
|
+ : endfor
|
||||||
|
+ : return c
|
||||||
|
+ :endfu
|
||||||
|
+ :fu! DoRecordScreen()
|
||||||
|
+ : wincmd l
|
||||||
|
+ : $put =printf(\"\n%s\", g:test)
|
||||||
|
+ : $put =g:line
|
||||||
|
+ : wincmd p
|
||||||
|
+ :endfu
|
||||||
|
+ :let g:test="Test 1: set linebreak"
|
||||||
|
+ :redraw!
|
||||||
|
+ :let line=ScreenChar(winwidth(0))
|
||||||
|
+ :call DoRecordScreen()
|
||||||
|
+ :let g:test="Test 2: set linebreak + set list"
|
||||||
|
+ :set linebreak list listchars=
|
||||||
|
+ :redraw!
|
||||||
|
+ :let line=ScreenChar(winwidth(0))
|
||||||
|
+ :call DoRecordScreen()
|
||||||
|
+ :let g:test ="Test 3: set linebreak + set list + fancy listchars"
|
||||||
|
+ :exe "set linebreak list listchars=nbsp:\u2423,tab:\u2595\u2014,trail:\u02d1,eol:\ub6"
|
||||||
|
+ :redraw!
|
||||||
|
+ :let line=ScreenChar(winwidth(0))
|
||||||
|
+ :call DoRecordScreen()
|
||||||
|
+ :let g:test ="Test 4: set linebreak nolist"
|
||||||
|
+ :set nolist linebreak
|
||||||
|
+ :redraw!
|
||||||
|
+ :let line=ScreenChar(winwidth(0))
|
||||||
|
+ :call DoRecordScreen()
|
||||||
|
+ :let g:test ="Test 5: set nolinebreak list"
|
||||||
|
+ :set list nolinebreak
|
||||||
|
+ :redraw!
|
||||||
|
+ :let line=ScreenChar(winwidth(0))
|
||||||
|
+ :call DoRecordScreen()
|
||||||
|
+ :let g:test ="Test 6: set linebreak with tab and 1 line as long as screen: should break!"
|
||||||
|
+ :set nolist linebreak ts=8
|
||||||
|
+ :let line="1\t".repeat('a', winwidth(0)-2)
|
||||||
|
+ :$put =line
|
||||||
|
+ :$
|
||||||
|
+ :norm! zt
|
||||||
|
+ :redraw!
|
||||||
|
+ :let line=ScreenChar(winwidth(0))
|
||||||
|
+ :call DoRecordScreen()
|
||||||
|
+ :%w! test.out
|
||||||
|
+ :qa!
|
||||||
|
+ ENDTEST
|
||||||
|
+ dummy text
|
||||||
|
*** ../vim-7.4.352/src/testdir/test_listlbr.ok 2014-07-02 19:58:25.646374067 +0200
|
||||||
|
--- src/testdir/test_listlbr.ok 2014-07-02 19:47:21.610363892 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,39 ----
|
||||||
|
+
|
||||||
|
+ abcdef hijklmn pqrstuvwxyz 1060ABCDEFGHIJKLMNOP
|
||||||
|
+
|
||||||
|
+ Test 1: set linebreak
|
||||||
|
+ abcdef
|
||||||
|
+ +hijklmn
|
||||||
|
+ +pqrstuvwxyz 1060ABC
|
||||||
|
+ +DEFGHIJKLMNOP
|
||||||
|
+
|
||||||
|
+ Test 2: set linebreak + set list
|
||||||
|
+ ^Iabcdef hijklmn^I
|
||||||
|
+ +pqrstuvwxyz 1060ABC
|
||||||
|
+ +DEFGHIJKLMNOP
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+ Test 3: set linebreak + set list + fancy listchars
|
||||||
|
+ ▕———abcdef
|
||||||
|
+ +hijklmn▕———
|
||||||
|
+ +pqrstuvwxyz␣1060ABC
|
||||||
|
+ +DEFGHIJKLMNOPˑ¶
|
||||||
|
+
|
||||||
|
+ Test 4: set linebreak nolist
|
||||||
|
+ abcdef
|
||||||
|
+ +hijklmn
|
||||||
|
+ +pqrstuvwxyz 1060ABC
|
||||||
|
+ +DEFGHIJKLMNOP
|
||||||
|
+
|
||||||
|
+ Test 5: set nolinebreak list
|
||||||
|
+ ▕———abcdef hijklmn▕—
|
||||||
|
+ +pqrstuvwxyz␣1060ABC
|
||||||
|
+ +DEFGHIJKLMNOPˑ¶
|
||||||
|
+ ¶
|
||||||
|
+ 1 aaaaaaaaaaaaaaaaaa
|
||||||
|
+
|
||||||
|
+ Test 6: set linebreak with tab and 1 line as long as screen: should break!
|
||||||
|
+ 1
|
||||||
|
+ +aaaaaaaaaaaaaaaaaa
|
||||||
|
+ ~
|
||||||
|
+ ~
|
||||||
|
*** ../vim-7.4.352/src/version.c 2014-07-02 19:37:38.462354956 +0200
|
||||||
|
--- src/version.c 2014-07-02 19:57:44.066373430 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 353,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
FATHER: You only killed the bride's father - that's all -
|
||||||
|
LAUNCELOT: Oh dear, I didn't really mean to...
|
||||||
|
FATHER: Didn't mean to? You put your sword right through his head!
|
||||||
|
LAUNCELOT: Gosh - Is he all right?
|
||||||
|
"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 ///
|
56
7.4.354
Normal file
56
7.4.354
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.354
|
||||||
|
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.4.354
|
||||||
|
Problem: Compiler warning.
|
||||||
|
Solution: Change NUL to NULL. (Ken Takata)
|
||||||
|
Files: src/screen.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.353/src/screen.c 2014-07-02 19:59:35.454375136 +0200
|
||||||
|
--- src/screen.c 2014-07-03 14:08:03.579375847 +0200
|
||||||
|
***************
|
||||||
|
*** 3704,3710 ****
|
||||||
|
if (diff_hlf != (hlf_T)0)
|
||||||
|
char_attr = hl_attr(diff_hlf);
|
||||||
|
#endif
|
||||||
|
! p_extra = NUL;
|
||||||
|
c_extra = ' ';
|
||||||
|
n_extra = get_breakindent_win(wp,
|
||||||
|
ml_get_buf(wp->w_buffer, lnum, FALSE));
|
||||||
|
--- 3704,3710 ----
|
||||||
|
if (diff_hlf != (hlf_T)0)
|
||||||
|
char_attr = hl_attr(diff_hlf);
|
||||||
|
#endif
|
||||||
|
! p_extra = NULL;
|
||||||
|
c_extra = ' ';
|
||||||
|
n_extra = get_breakindent_win(wp,
|
||||||
|
ml_get_buf(wp->w_buffer, lnum, FALSE));
|
||||||
|
*** ../vim-7.4.353/src/version.c 2014-07-02 19:59:35.454375136 +0200
|
||||||
|
--- src/version.c 2014-07-03 14:08:38.875376388 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 354,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
[SIR LAUNCELOT runs back up the stairs, grabs a rope
|
||||||
|
of the wall and swings out over the heads of the CROWD in a
|
||||||
|
swashbuckling manner towards a large window. He stops just short
|
||||||
|
of the window and is left swing pathetically back and forth.]
|
||||||
|
LAUNCELOT: Excuse me ... could somebody give me a push ...
|
||||||
|
"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 ///
|
929
7.4.355
Normal file
929
7.4.355
Normal file
@ -0,0 +1,929 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.355
|
||||||
|
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.4.355
|
||||||
|
Problem: Several problems with Javascript indenting.
|
||||||
|
Solution: Improve Javascript indenting.
|
||||||
|
Files: src/misc1.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.354/src/misc1.c 2014-07-02 18:27:44.662290695 +0200
|
||||||
|
--- src/misc1.c 2014-07-03 22:42:20.315848662 +0200
|
||||||
|
***************
|
||||||
|
*** 5382,5387 ****
|
||||||
|
--- 5382,5388 ----
|
||||||
|
static char_u *cin_skipcomment __ARGS((char_u *));
|
||||||
|
static int cin_nocode __ARGS((char_u *));
|
||||||
|
static pos_T *find_line_comment __ARGS((void));
|
||||||
|
+ static int cin_has_js_key __ARGS((char_u *text));
|
||||||
|
static int cin_islabel_skip __ARGS((char_u **));
|
||||||
|
static int cin_isdefault __ARGS((char_u *));
|
||||||
|
static char_u *after_label __ARGS((char_u *l));
|
||||||
|
***************
|
||||||
|
*** 5410,5415 ****
|
||||||
|
--- 5411,5417 ----
|
||||||
|
static int cin_skip2pos __ARGS((pos_T *trypos));
|
||||||
|
static pos_T *find_start_brace __ARGS((void));
|
||||||
|
static pos_T *find_match_paren __ARGS((int));
|
||||||
|
+ static pos_T *find_match_char __ARGS((int c, int ind_maxparen));
|
||||||
|
static int corr_ind_maxparen __ARGS((pos_T *startpos));
|
||||||
|
static int find_last_paren __ARGS((char_u *l, int start, int end));
|
||||||
|
static int find_match __ARGS((int lookfor, linenr_T ourscope));
|
||||||
|
***************
|
||||||
|
*** 5494,5500 ****
|
||||||
|
--- 5496,5533 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
+ * Return TRUE if "text" starts with "key:".
|
||||||
|
+ */
|
||||||
|
+ static int
|
||||||
|
+ cin_has_js_key(text)
|
||||||
|
+ char_u *text;
|
||||||
|
+ {
|
||||||
|
+ char_u *s = skipwhite(text);
|
||||||
|
+ int quote = 0;
|
||||||
|
+
|
||||||
|
+ if (*s == '\'' || *s == '"')
|
||||||
|
+ {
|
||||||
|
+ /* can be 'key': or "key": */
|
||||||
|
+ quote = *s;
|
||||||
|
+ ++s;
|
||||||
|
+ }
|
||||||
|
+ if (!vim_isIDc(*s)) /* need at least one ID character */
|
||||||
|
+ return FALSE;
|
||||||
|
+
|
||||||
|
+ while (vim_isIDc(*s))
|
||||||
|
+ ++s;
|
||||||
|
+ if (*s == quote)
|
||||||
|
+ ++s;
|
||||||
|
+
|
||||||
|
+ s = cin_skipcomment(s);
|
||||||
|
+
|
||||||
|
+ /* "::" is not a label, it's C++ */
|
||||||
|
+ return (*s == ':' && s[1] != ':');
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
* Check if string matches "label:"; move to character after ':' if true.
|
||||||
|
+ * "*s" must point to the start of the label, if there is one.
|
||||||
|
*/
|
||||||
|
static int
|
||||||
|
cin_islabel_skip(s)
|
||||||
|
***************
|
||||||
|
*** 6621,6632 ****
|
||||||
|
find_match_paren(ind_maxparen) /* XXX */
|
||||||
|
int ind_maxparen;
|
||||||
|
{
|
||||||
|
pos_T cursor_save;
|
||||||
|
pos_T *trypos;
|
||||||
|
static pos_T pos_copy;
|
||||||
|
|
||||||
|
cursor_save = curwin->w_cursor;
|
||||||
|
! if ((trypos = findmatchlimit(NULL, '(', 0, ind_maxparen)) != NULL)
|
||||||
|
{
|
||||||
|
/* check if the ( is in a // comment */
|
||||||
|
if ((colnr_T)cin_skip2pos(trypos) > trypos->col)
|
||||||
|
--- 6654,6673 ----
|
||||||
|
find_match_paren(ind_maxparen) /* XXX */
|
||||||
|
int ind_maxparen;
|
||||||
|
{
|
||||||
|
+ return find_match_char('(', ind_maxparen);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ static pos_T *
|
||||||
|
+ find_match_char(c, ind_maxparen) /* XXX */
|
||||||
|
+ int c;
|
||||||
|
+ int ind_maxparen;
|
||||||
|
+ {
|
||||||
|
pos_T cursor_save;
|
||||||
|
pos_T *trypos;
|
||||||
|
static pos_T pos_copy;
|
||||||
|
|
||||||
|
cursor_save = curwin->w_cursor;
|
||||||
|
! if ((trypos = findmatchlimit(NULL, c, 0, ind_maxparen)) != NULL)
|
||||||
|
{
|
||||||
|
/* check if the ( is in a // comment */
|
||||||
|
if ((colnr_T)cin_skip2pos(trypos) > trypos->col)
|
||||||
|
***************
|
||||||
|
*** 6976,6981 ****
|
||||||
|
--- 7017,7024 ----
|
||||||
|
#define LOOKFOR_NOBREAK 8
|
||||||
|
#define LOOKFOR_CPP_BASECLASS 9
|
||||||
|
#define LOOKFOR_ENUM_OR_INIT 10
|
||||||
|
+ #define LOOKFOR_JS_KEY 11
|
||||||
|
+ #define LOOKFOR_NO_COMMA 12
|
||||||
|
|
||||||
|
int whilelevel;
|
||||||
|
linenr_T lnum;
|
||||||
|
***************
|
||||||
|
*** 6986,6991 ****
|
||||||
|
--- 7029,7035 ----
|
||||||
|
int cont_amount = 0; /* amount for continuation line */
|
||||||
|
int original_line_islabel;
|
||||||
|
int added_to_amount = 0;
|
||||||
|
+ int js_cur_has_key = 0;
|
||||||
|
|
||||||
|
/* make a copy, value is changed below */
|
||||||
|
int ind_continuation = curbuf->b_ind_continuation;
|
||||||
|
***************
|
||||||
|
*** 7209,7214 ****
|
||||||
|
--- 7253,7268 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
+ * Are we looking at a ']' that has a match?
|
||||||
|
+ */
|
||||||
|
+ else if (*skipwhite(theline) == ']'
|
||||||
|
+ && (trypos = find_match_char('[', curbuf->b_ind_maxparen)) != NULL)
|
||||||
|
+ {
|
||||||
|
+ /* align with the line containing the '['. */
|
||||||
|
+ amount = get_indent_lnum(trypos->lnum);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
* Are we inside parentheses or braces?
|
||||||
|
*/ /* XXX */
|
||||||
|
else if (((trypos = find_match_paren(curbuf->b_ind_maxparen)) != NULL
|
||||||
|
***************
|
||||||
|
*** 7473,7486 ****
|
||||||
|
if (cin_iscomment(theline))
|
||||||
|
amount += curbuf->b_ind_comment;
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- /*
|
||||||
|
- * Are we at least inside braces, then?
|
||||||
|
- */
|
||||||
|
else
|
||||||
|
{
|
||||||
|
trypos = tryposBrace;
|
||||||
|
-
|
||||||
|
ourscope = trypos->lnum;
|
||||||
|
start = ml_get(ourscope);
|
||||||
|
|
||||||
|
--- 7527,7539 ----
|
||||||
|
if (cin_iscomment(theline))
|
||||||
|
amount += curbuf->b_ind_comment;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
+ /*
|
||||||
|
+ * We are inside braces, there is a { before this line at the position
|
||||||
|
+ * stored in tryposBrace.
|
||||||
|
+ */
|
||||||
|
trypos = tryposBrace;
|
||||||
|
ourscope = trypos->lnum;
|
||||||
|
start = ml_get(ourscope);
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 7502,7525 ****
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! /*
|
||||||
|
! * that opening brace might have been on a continuation
|
||||||
|
! * line. if so, find the start of the line.
|
||||||
|
! */
|
||||||
|
curwin->w_cursor.lnum = ourscope;
|
||||||
|
|
||||||
|
! /*
|
||||||
|
! * position the cursor over the rightmost paren, so that
|
||||||
|
! * matching it will take us back to the start of the line.
|
||||||
|
! */
|
||||||
|
lnum = ourscope;
|
||||||
|
if (find_last_paren(start, '(', ')')
|
||||||
|
&& (trypos = find_match_paren(curbuf->b_ind_maxparen))
|
||||||
|
!= NULL)
|
||||||
|
lnum = trypos->lnum;
|
||||||
|
|
||||||
|
! /*
|
||||||
|
! * It could have been something like
|
||||||
|
* case 1: if (asdf &&
|
||||||
|
* ldfd) {
|
||||||
|
* }
|
||||||
|
--- 7555,7573 ----
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! /* That opening brace might have been on a continuation
|
||||||
|
! * line. if so, find the start of the line. */
|
||||||
|
curwin->w_cursor.lnum = ourscope;
|
||||||
|
|
||||||
|
! /* Position the cursor over the rightmost paren, so that
|
||||||
|
! * matching it will take us back to the start of the line. */
|
||||||
|
lnum = ourscope;
|
||||||
|
if (find_last_paren(start, '(', ')')
|
||||||
|
&& (trypos = find_match_paren(curbuf->b_ind_maxparen))
|
||||||
|
!= NULL)
|
||||||
|
lnum = trypos->lnum;
|
||||||
|
|
||||||
|
! /* It could have been something like
|
||||||
|
* case 1: if (asdf &&
|
||||||
|
* ldfd) {
|
||||||
|
* }
|
||||||
|
***************
|
||||||
|
*** 7535,7542 ****
|
||||||
|
start_brace = BRACE_AT_END;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
! * if we're looking at a closing brace, that's where
|
||||||
|
* we want to be. otherwise, add the amount of room
|
||||||
|
* that an indent is supposed to be.
|
||||||
|
*/
|
||||||
|
--- 7583,7594 ----
|
||||||
|
start_brace = BRACE_AT_END;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ /* For Javascript check if the line starts with "key:". */
|
||||||
|
+ if (curbuf->b_ind_js)
|
||||||
|
+ js_cur_has_key = cin_has_js_key(theline);
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
! * If we're looking at a closing brace, that's where
|
||||||
|
* we want to be. otherwise, add the amount of room
|
||||||
|
* that an indent is supposed to be.
|
||||||
|
*/
|
||||||
|
***************
|
||||||
|
*** 7643,7649 ****
|
||||||
|
* Search backwards. If we find something we recognize, line up
|
||||||
|
* with that.
|
||||||
|
*
|
||||||
|
! * if we're looking at an open brace, indent
|
||||||
|
* the usual amount relative to the conditional
|
||||||
|
* that opens the block.
|
||||||
|
*/
|
||||||
|
--- 7695,7701 ----
|
||||||
|
* Search backwards. If we find something we recognize, line up
|
||||||
|
* with that.
|
||||||
|
*
|
||||||
|
! * If we're looking at an open brace, indent
|
||||||
|
* the usual amount relative to the conditional
|
||||||
|
* that opens the block.
|
||||||
|
*/
|
||||||
|
***************
|
||||||
|
*** 8051,8056 ****
|
||||||
|
--- 8103,8143 ----
|
||||||
|
*/
|
||||||
|
terminated = cin_isterminated(l, FALSE, TRUE);
|
||||||
|
|
||||||
|
+ if (js_cur_has_key)
|
||||||
|
+ {
|
||||||
|
+ js_cur_has_key = 0; /* only check the first line */
|
||||||
|
+ if (curbuf->b_ind_js && terminated == ',')
|
||||||
|
+ {
|
||||||
|
+ /* For Javascript we might be inside an object:
|
||||||
|
+ * key: something, <- align with this
|
||||||
|
+ * key: something
|
||||||
|
+ * or:
|
||||||
|
+ * key: something + <- align with this
|
||||||
|
+ * something,
|
||||||
|
+ * key: something
|
||||||
|
+ */
|
||||||
|
+ lookfor = LOOKFOR_JS_KEY;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ if (lookfor == LOOKFOR_JS_KEY && cin_has_js_key(l))
|
||||||
|
+ {
|
||||||
|
+ amount = get_indent();
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+ if (lookfor == LOOKFOR_NO_COMMA)
|
||||||
|
+ {
|
||||||
|
+ if (terminated != ',')
|
||||||
|
+ /* line below current line is the one that starts a
|
||||||
|
+ * (possibly broken) line ending in a comma. */
|
||||||
|
+ break;
|
||||||
|
+ amount = get_indent();
|
||||||
|
+ if (curwin->w_cursor.lnum - 1 == ourscope)
|
||||||
|
+ /* line above is start of the scope, thus current line
|
||||||
|
+ * is the one that stars a (possibly broken) line
|
||||||
|
+ * ending in a comma. */
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
if (terminated == 0 || (lookfor != LOOKFOR_UNTERM
|
||||||
|
&& terminated == ','))
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 8062,8072 ****
|
||||||
|
* bar )
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
! * position the cursor over the rightmost paren, so that
|
||||||
|
* matching it will take us back to the start of the line.
|
||||||
|
*/
|
||||||
|
(void)find_last_paren(l, '(', ')');
|
||||||
|
trypos = find_match_paren(corr_ind_maxparen(&cur_curpos));
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If we are looking for ',', we also look for matching
|
||||||
|
--- 8149,8164 ----
|
||||||
|
* bar )
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
! * Position the cursor over the rightmost paren, so that
|
||||||
|
* matching it will take us back to the start of the line.
|
||||||
|
+ * Ignore a match before the start of the block.
|
||||||
|
*/
|
||||||
|
(void)find_last_paren(l, '(', ')');
|
||||||
|
trypos = find_match_paren(corr_ind_maxparen(&cur_curpos));
|
||||||
|
+ if (trypos != NULL && (trypos->lnum < tryposBrace->lnum
|
||||||
|
+ || (trypos->lnum == tryposBrace->lnum
|
||||||
|
+ && trypos->col < tryposBrace->col)))
|
||||||
|
+ trypos = NULL;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If we are looking for ',', we also look for matching
|
||||||
|
***************
|
||||||
|
*** 8117,8126 ****
|
||||||
|
* Get indent and pointer to text for current line,
|
||||||
|
* ignoring any jump label. XXX
|
||||||
|
*/
|
||||||
|
! if (!curbuf->b_ind_js)
|
||||||
|
! cur_amount = skip_label(curwin->w_cursor.lnum, &l);
|
||||||
|
! else
|
||||||
|
cur_amount = get_indent();
|
||||||
|
/*
|
||||||
|
* If this is just above the line we are indenting, and it
|
||||||
|
* starts with a '{', line it up with this line.
|
||||||
|
--- 8209,8218 ----
|
||||||
|
* Get indent and pointer to text for current line,
|
||||||
|
* ignoring any jump label. XXX
|
||||||
|
*/
|
||||||
|
! if (curbuf->b_ind_js)
|
||||||
|
cur_amount = get_indent();
|
||||||
|
+ else
|
||||||
|
+ cur_amount = skip_label(curwin->w_cursor.lnum, &l);
|
||||||
|
/*
|
||||||
|
* If this is just above the line we are indenting, and it
|
||||||
|
* starts with a '{', line it up with this line.
|
||||||
|
***************
|
||||||
|
*** 8142,8148 ****
|
||||||
|
if (*skipwhite(l) != '{')
|
||||||
|
amount += curbuf->b_ind_open_extra;
|
||||||
|
|
||||||
|
! if (curbuf->b_ind_cpp_baseclass)
|
||||||
|
{
|
||||||
|
/* have to look back, whether it is a cpp base
|
||||||
|
* class declaration or initialization */
|
||||||
|
--- 8234,8240 ----
|
||||||
|
if (*skipwhite(l) != '{')
|
||||||
|
amount += curbuf->b_ind_open_extra;
|
||||||
|
|
||||||
|
! if (curbuf->b_ind_cpp_baseclass && !curbuf->b_ind_js)
|
||||||
|
{
|
||||||
|
/* have to look back, whether it is a cpp base
|
||||||
|
* class declaration or initialization */
|
||||||
|
***************
|
||||||
|
*** 8302,8309 ****
|
||||||
|
*/
|
||||||
|
if (lookfor == LOOKFOR_INITIAL && terminated == ',')
|
||||||
|
{
|
||||||
|
! lookfor = LOOKFOR_ENUM_OR_INIT;
|
||||||
|
! cont_amount = cin_first_id_amount();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
--- 8394,8434 ----
|
||||||
|
*/
|
||||||
|
if (lookfor == LOOKFOR_INITIAL && terminated == ',')
|
||||||
|
{
|
||||||
|
! if (curbuf->b_ind_js)
|
||||||
|
! {
|
||||||
|
! /* Search for a line ending in a comma
|
||||||
|
! * and line up with the line below it
|
||||||
|
! * (could be the current line).
|
||||||
|
! * some = [
|
||||||
|
! * 1, <- line up here
|
||||||
|
! * 2,
|
||||||
|
! * some = [
|
||||||
|
! * 3 + <- line up here
|
||||||
|
! * 4 *
|
||||||
|
! * 5,
|
||||||
|
! * 6,
|
||||||
|
! */
|
||||||
|
! lookfor = LOOKFOR_NO_COMMA;
|
||||||
|
! amount = get_indent(); /* XXX */
|
||||||
|
! trypos = find_match_char('[',
|
||||||
|
! curbuf->b_ind_maxparen);
|
||||||
|
! if (trypos != NULL)
|
||||||
|
! {
|
||||||
|
! if (trypos->lnum
|
||||||
|
! == curwin->w_cursor.lnum - 1)
|
||||||
|
! {
|
||||||
|
! /* Current line is first inside
|
||||||
|
! * [], line up with it. */
|
||||||
|
! break;
|
||||||
|
! }
|
||||||
|
! ourscope = trypos->lnum;
|
||||||
|
! }
|
||||||
|
! }
|
||||||
|
! else
|
||||||
|
! {
|
||||||
|
! lookfor = LOOKFOR_ENUM_OR_INIT;
|
||||||
|
! cont_amount = cin_first_id_amount();
|
||||||
|
! }
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 8313,8319 ****
|
||||||
|
/* XXX */
|
||||||
|
cont_amount = cin_get_equal_amount(
|
||||||
|
curwin->w_cursor.lnum);
|
||||||
|
! if (lookfor != LOOKFOR_TERM)
|
||||||
|
lookfor = LOOKFOR_UNTERM;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
--- 8438,8445 ----
|
||||||
|
/* XXX */
|
||||||
|
cont_amount = cin_get_equal_amount(
|
||||||
|
curwin->w_cursor.lnum);
|
||||||
|
! if (lookfor != LOOKFOR_TERM
|
||||||
|
! && lookfor != LOOKFOR_JS_KEY)
|
||||||
|
lookfor = LOOKFOR_UNTERM;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
***************
|
||||||
|
*** 8324,8331 ****
|
||||||
|
* Check if we are after a while (cond);
|
||||||
|
* If so: Ignore until the matching "do".
|
||||||
|
*/
|
||||||
|
! /* XXX */
|
||||||
|
! else if (cin_iswhileofdo_end(terminated))
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* Found an unterminated line after a while ();, line up
|
||||||
|
--- 8450,8456 ----
|
||||||
|
* Check if we are after a while (cond);
|
||||||
|
* If so: Ignore until the matching "do".
|
||||||
|
*/
|
||||||
|
! else if (cin_iswhileofdo_end(terminated)) /* XXX */
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* Found an unterminated line after a while ();, line up
|
||||||
|
***************
|
||||||
|
*** 8538,8555 ****
|
||||||
|
if (curbuf->b_ind_jump_label > 0 && original_line_islabel)
|
||||||
|
amount -= curbuf->b_ind_jump_label;
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- /*
|
||||||
|
- * ok -- we're not inside any sort of structure at all!
|
||||||
|
- *
|
||||||
|
- * this means we're at the top level, and everything should
|
||||||
|
- * basically just match where the previous line is, except
|
||||||
|
- * for the lines immediately following a function declaration,
|
||||||
|
- * which are K&R-style parameters and need to be indented.
|
||||||
|
- */
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* if our line starts with an open brace, forget about any
|
||||||
|
* prevailing indent and make sure it looks like the start
|
||||||
|
* of a function
|
||||||
|
--- 8663,8678 ----
|
||||||
|
if (curbuf->b_ind_jump_label > 0 && original_line_islabel)
|
||||||
|
amount -= curbuf->b_ind_jump_label;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
+ * ok -- we're not inside any sort of structure at all!
|
||||||
|
+ *
|
||||||
|
+ * This means we're at the top level, and everything should
|
||||||
|
+ * basically just match where the previous line is, except
|
||||||
|
+ * for the lines immediately following a function declaration,
|
||||||
|
+ * which are K&R-style parameters and need to be indented.
|
||||||
|
+ *
|
||||||
|
* if our line starts with an open brace, forget about any
|
||||||
|
* prevailing indent and make sure it looks like the start
|
||||||
|
* of a function
|
||||||
|
***************
|
||||||
|
*** 8700,8705 ****
|
||||||
|
--- 8823,8840 ----
|
||||||
|
break;
|
||||||
|
|
||||||
|
/*
|
||||||
|
+ * If the previous line ends on '[' we are probably in an
|
||||||
|
+ * array constant:
|
||||||
|
+ * something = [
|
||||||
|
+ * 234, <- extra indent
|
||||||
|
+ */
|
||||||
|
+ if (cin_ends_in(l, (char_u *)"[", NULL))
|
||||||
|
+ {
|
||||||
|
+ amount = get_indent() + ind_continuation;
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
* Find a line only has a semicolon that belongs to a previous
|
||||||
|
* line ending in '}', e.g. before an #endif. Don't increase
|
||||||
|
* indent then.
|
||||||
|
*** ../vim-7.4.354/src/testdir/test3.in 2014-07-02 18:27:44.662290695 +0200
|
||||||
|
--- src/testdir/test3.in 2014-07-03 22:41:38.743848025 +0200
|
||||||
|
***************
|
||||||
|
*** 1432,1438 ****
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:set cino=(0,ts
|
||||||
|
! 2kdd=][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void func(int a
|
||||||
|
--- 1432,1438 ----
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:set cino=(0,ts
|
||||||
|
! 2kdd2j=][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void func(int a
|
||||||
|
***************
|
||||||
|
*** 1446,1452 ****
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:set cino=(0
|
||||||
|
! 2kdd=][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void
|
||||||
|
--- 1446,1452 ----
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:set cino=(0
|
||||||
|
! 2kdd2j=][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void
|
||||||
|
***************
|
||||||
|
*** 1461,1467 ****
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:set cino&
|
||||||
|
! 2kdd=7][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void func(void)
|
||||||
|
--- 1461,1467 ----
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:set cino&
|
||||||
|
! 2kdd2j=7][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void func(void)
|
||||||
|
***************
|
||||||
|
*** 1538,1544 ****
|
||||||
|
STARTTEST
|
||||||
|
:set cino&
|
||||||
|
:set cino+=l1
|
||||||
|
! 2kdd=][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void func(void)
|
||||||
|
--- 1538,1544 ----
|
||||||
|
STARTTEST
|
||||||
|
:set cino&
|
||||||
|
:set cino+=l1
|
||||||
|
! 2kdd2j=][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void func(void)
|
||||||
|
***************
|
||||||
|
*** 1567,1573 ****
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:set cino&
|
||||||
|
! 2kdd=][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void func(void)
|
||||||
|
--- 1567,1573 ----
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:set cino&
|
||||||
|
! 2kdd2j=][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void func(void)
|
||||||
|
***************
|
||||||
|
*** 1592,1598 ****
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:set cino&
|
||||||
|
! 2kdd=][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void func(void)
|
||||||
|
--- 1592,1598 ----
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:set cino&
|
||||||
|
! 2kdd2j=][
|
||||||
|
ENDTEST
|
||||||
|
|
||||||
|
void func(void)
|
||||||
|
***************
|
||||||
|
*** 1919,1928 ****
|
||||||
|
|
||||||
|
JSSTART
|
||||||
|
var foo = [
|
||||||
|
! 1, // indent 8 more
|
||||||
|
2,
|
||||||
|
3
|
||||||
|
! ]; // indent 8 less
|
||||||
|
JSEND
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
--- 1919,1928 ----
|
||||||
|
|
||||||
|
JSSTART
|
||||||
|
var foo = [
|
||||||
|
! 1,
|
||||||
|
2,
|
||||||
|
3
|
||||||
|
! ];
|
||||||
|
JSEND
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
***************
|
||||||
|
*** 1937,1943 ****
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
3
|
||||||
|
! ]; // indent 16 less
|
||||||
|
}
|
||||||
|
JSEND
|
||||||
|
|
||||||
|
--- 1937,1943 ----
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
3
|
||||||
|
! ];
|
||||||
|
}
|
||||||
|
JSEND
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 1954,1959 ****
|
||||||
|
--- 1954,1961 ----
|
||||||
|
cond) {
|
||||||
|
stmt;
|
||||||
|
}
|
||||||
|
+ window.something.left =
|
||||||
|
+ (width - 50 + offset) + "px";
|
||||||
|
var class_name='myclass';
|
||||||
|
|
||||||
|
function private_method() {
|
||||||
|
***************
|
||||||
|
*** 1969,1983 ****
|
||||||
|
|
||||||
|
$(this).data(class_name+'_public',$.extend({},{
|
||||||
|
foo: 'bar',
|
||||||
|
! bar: 2, // indent 8 more
|
||||||
|
! foobar: [ // indent 8 more
|
||||||
|
! 1, // indent 8 more
|
||||||
|
! 2, // indent 16 more
|
||||||
|
! 3 // indent 16 more
|
||||||
|
],
|
||||||
|
! callback: function(){ // indent 8 more
|
||||||
|
! return true; // indent 8 more
|
||||||
|
! } // indent 8 more
|
||||||
|
}, options||{}));
|
||||||
|
}
|
||||||
|
|
||||||
|
--- 1971,1985 ----
|
||||||
|
|
||||||
|
$(this).data(class_name+'_public',$.extend({},{
|
||||||
|
foo: 'bar',
|
||||||
|
! bar: 2,
|
||||||
|
! foobar: [
|
||||||
|
! 1,
|
||||||
|
! 2,
|
||||||
|
! 3
|
||||||
|
],
|
||||||
|
! callback: function(){
|
||||||
|
! return true;
|
||||||
|
! }
|
||||||
|
}, options||{}));
|
||||||
|
}
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 2018,2026 ****
|
||||||
|
foo: 'bar',
|
||||||
|
bar: 2,
|
||||||
|
foobar: [
|
||||||
|
! 1, // indent 8 more
|
||||||
|
! 2, // indent 8 more
|
||||||
|
! 3 // indent 8 more
|
||||||
|
],
|
||||||
|
callback: function(){
|
||||||
|
return true;
|
||||||
|
--- 2020,2028 ----
|
||||||
|
foo: 'bar',
|
||||||
|
bar: 2,
|
||||||
|
foobar: [
|
||||||
|
! 1,
|
||||||
|
! 2,
|
||||||
|
! 3
|
||||||
|
],
|
||||||
|
callback: function(){
|
||||||
|
return true;
|
||||||
|
***************
|
||||||
|
*** 2040,2054 ****
|
||||||
|
function init(options) {
|
||||||
|
$(this).data(class_name+'_public',$.extend({},{
|
||||||
|
foo: 'bar',
|
||||||
|
! bar: 2, // indent 8 more
|
||||||
|
! foobar: [ // indent 8 more
|
||||||
|
! 1, // indent 8 more
|
||||||
|
! 2, // indent 16 more
|
||||||
|
! 3 // indent 16 more
|
||||||
|
],
|
||||||
|
! callback: function(){ // indent 8 more
|
||||||
|
! return true; // indent 8 more
|
||||||
|
! } // indent 8 more
|
||||||
|
}, options||{}));
|
||||||
|
}
|
||||||
|
})(jQuery);
|
||||||
|
--- 2042,2056 ----
|
||||||
|
function init(options) {
|
||||||
|
$(this).data(class_name+'_public',$.extend({},{
|
||||||
|
foo: 'bar',
|
||||||
|
! bar: 2,
|
||||||
|
! foobar: [
|
||||||
|
! 1,
|
||||||
|
! 2,
|
||||||
|
! 3
|
||||||
|
],
|
||||||
|
! callback: function(){
|
||||||
|
! return true;
|
||||||
|
! }
|
||||||
|
}, options||{}));
|
||||||
|
}
|
||||||
|
})(jQuery);
|
||||||
|
*** ../vim-7.4.354/src/testdir/test3.ok 2014-07-02 18:27:44.662290695 +0200
|
||||||
|
--- src/testdir/test3.ok 2014-07-03 22:18:58.167827177 +0200
|
||||||
|
***************
|
||||||
|
*** 1707,1716 ****
|
||||||
|
|
||||||
|
JSSTART
|
||||||
|
var foo = [
|
||||||
|
! 1, // indent 8 more
|
||||||
|
2,
|
||||||
|
3
|
||||||
|
! ]; // indent 8 less
|
||||||
|
JSEND
|
||||||
|
|
||||||
|
|
||||||
|
--- 1707,1716 ----
|
||||||
|
|
||||||
|
JSSTART
|
||||||
|
var foo = [
|
||||||
|
! 1,
|
||||||
|
2,
|
||||||
|
3
|
||||||
|
! ];
|
||||||
|
JSEND
|
||||||
|
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 1720,1726 ****
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
3
|
||||||
|
! ]; // indent 16 less
|
||||||
|
}
|
||||||
|
JSEND
|
||||||
|
|
||||||
|
--- 1720,1726 ----
|
||||||
|
1,
|
||||||
|
2,
|
||||||
|
3
|
||||||
|
! ];
|
||||||
|
}
|
||||||
|
JSEND
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 1732,1737 ****
|
||||||
|
--- 1732,1739 ----
|
||||||
|
cond) {
|
||||||
|
stmt;
|
||||||
|
}
|
||||||
|
+ window.something.left =
|
||||||
|
+ (width - 50 + offset) + "px";
|
||||||
|
var class_name='myclass';
|
||||||
|
|
||||||
|
function private_method() {
|
||||||
|
***************
|
||||||
|
*** 1747,1761 ****
|
||||||
|
|
||||||
|
$(this).data(class_name+'_public',$.extend({},{
|
||||||
|
foo: 'bar',
|
||||||
|
! bar: 2, // indent 8 more
|
||||||
|
! foobar: [ // indent 8 more
|
||||||
|
! 1, // indent 8 more
|
||||||
|
! 2, // indent 16 more
|
||||||
|
! 3 // indent 16 more
|
||||||
|
],
|
||||||
|
! callback: function(){ // indent 8 more
|
||||||
|
! return true; // indent 8 more
|
||||||
|
! } // indent 8 more
|
||||||
|
}, options||{}));
|
||||||
|
}
|
||||||
|
|
||||||
|
--- 1749,1763 ----
|
||||||
|
|
||||||
|
$(this).data(class_name+'_public',$.extend({},{
|
||||||
|
foo: 'bar',
|
||||||
|
! bar: 2,
|
||||||
|
! foobar: [
|
||||||
|
! 1,
|
||||||
|
! 2,
|
||||||
|
! 3
|
||||||
|
],
|
||||||
|
! callback: function(){
|
||||||
|
! return true;
|
||||||
|
! }
|
||||||
|
}, options||{}));
|
||||||
|
}
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 1791,1799 ****
|
||||||
|
foo: 'bar',
|
||||||
|
bar: 2,
|
||||||
|
foobar: [
|
||||||
|
! 1, // indent 8 more
|
||||||
|
! 2, // indent 8 more
|
||||||
|
! 3 // indent 8 more
|
||||||
|
],
|
||||||
|
callback: function(){
|
||||||
|
return true;
|
||||||
|
--- 1793,1801 ----
|
||||||
|
foo: 'bar',
|
||||||
|
bar: 2,
|
||||||
|
foobar: [
|
||||||
|
! 1,
|
||||||
|
! 2,
|
||||||
|
! 3
|
||||||
|
],
|
||||||
|
callback: function(){
|
||||||
|
return true;
|
||||||
|
***************
|
||||||
|
*** 1808,1822 ****
|
||||||
|
function init(options) {
|
||||||
|
$(this).data(class_name+'_public',$.extend({},{
|
||||||
|
foo: 'bar',
|
||||||
|
! bar: 2, // indent 8 more
|
||||||
|
! foobar: [ // indent 8 more
|
||||||
|
! 1, // indent 8 more
|
||||||
|
! 2, // indent 16 more
|
||||||
|
! 3 // indent 16 more
|
||||||
|
],
|
||||||
|
! callback: function(){ // indent 8 more
|
||||||
|
! return true; // indent 8 more
|
||||||
|
! } // indent 8 more
|
||||||
|
}, options||{}));
|
||||||
|
}
|
||||||
|
})(jQuery);
|
||||||
|
--- 1810,1824 ----
|
||||||
|
function init(options) {
|
||||||
|
$(this).data(class_name+'_public',$.extend({},{
|
||||||
|
foo: 'bar',
|
||||||
|
! bar: 2,
|
||||||
|
! foobar: [
|
||||||
|
! 1,
|
||||||
|
! 2,
|
||||||
|
! 3
|
||||||
|
],
|
||||||
|
! callback: function(){
|
||||||
|
! return true;
|
||||||
|
! }
|
||||||
|
}, options||{}));
|
||||||
|
}
|
||||||
|
})(jQuery);
|
||||||
|
*** ../vim-7.4.354/src/version.c 2014-07-03 22:54:04.911859458 +0200
|
||||||
|
--- src/version.c 2014-07-03 22:54:40.971860011 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 355,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
MESKIMEN'S LAW
|
||||||
|
There's never time to do it right, but always time to do it over.
|
||||||
|
|
||||||
|
/// 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 ///
|
38
7.4.356
Normal file
38
7.4.356
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.356
|
||||||
|
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.4.356
|
||||||
|
Problem: Mercurial does not ignore memfile_test. (Daniel Hahler)
|
||||||
|
Solution: Add memfile_test to ignored files, remove trailing spaces.
|
||||||
|
Files: .hgignore
|
||||||
|
|
||||||
|
|
||||||
|
Note: This patch was made empty, because .hgignore is not part of the
|
||||||
|
distributed files.
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.355/src/version.c 2014-07-03 22:57:51.299862927 +0200
|
||||||
|
--- src/version.c 2014-07-09 13:41:39.855060005 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 356,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
In Africa some of the native tribes have a custom of beating the ground
|
||||||
|
with clubs and uttering spine chilling cries. Anthropologists call
|
||||||
|
this a form of primitive self-expression. In America we call it golf.
|
||||||
|
|
||||||
|
/// 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.4.357
Normal file
52
7.4.357
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.357
|
||||||
|
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.4.357
|
||||||
|
Problem: After completion some characters are not redrawn.
|
||||||
|
Solution: Clear the command line unconditionally. (Jacob Niehus)
|
||||||
|
Files: src/edit.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.356/src/edit.c 2014-06-25 14:39:35.102348584 +0200
|
||||||
|
--- src/edit.c 2014-07-09 13:22:22.747075922 +0200
|
||||||
|
***************
|
||||||
|
*** 3854,3861 ****
|
||||||
|
ins_compl_free();
|
||||||
|
compl_started = FALSE;
|
||||||
|
compl_matches = 0;
|
||||||
|
! if (!shortmess(SHM_COMPLETIONMENU))
|
||||||
|
! msg_clr_cmdline(); /* necessary for "noshowmode" */
|
||||||
|
ctrl_x_mode = 0;
|
||||||
|
compl_enter_selects = FALSE;
|
||||||
|
if (edit_submode != NULL)
|
||||||
|
--- 3854,3860 ----
|
||||||
|
ins_compl_free();
|
||||||
|
compl_started = FALSE;
|
||||||
|
compl_matches = 0;
|
||||||
|
! msg_clr_cmdline(); /* necessary for "noshowmode" */
|
||||||
|
ctrl_x_mode = 0;
|
||||||
|
compl_enter_selects = FALSE;
|
||||||
|
if (edit_submode != NULL)
|
||||||
|
*** ../vim-7.4.356/src/version.c 2014-07-09 13:43:18.399058649 +0200
|
||||||
|
--- src/version.c 2014-07-09 13:58:35.483046034 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 357,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Why isn't there mouse-flavored cat food?
|
||||||
|
|
||||||
|
/// 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 ///
|
290
7.4.358
Normal file
290
7.4.358
Normal file
@ -0,0 +1,290 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.358
|
||||||
|
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.4.358 (after 7.4.351)
|
||||||
|
Problem: Sort is not always stable.
|
||||||
|
Solution: Add an index instead of relying on the pointer to remain the same.
|
||||||
|
Idea by Jun Takimoto.
|
||||||
|
Files: src/eval.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.357/src/eval.c 2014-07-02 19:06:14.686326091 +0200
|
||||||
|
--- src/eval.c 2014-07-09 17:42:05.699813489 +0200
|
||||||
|
***************
|
||||||
|
*** 17329,17334 ****
|
||||||
|
--- 17329,17341 ----
|
||||||
|
#endif
|
||||||
|
item_compare2 __ARGS((const void *s1, const void *s2));
|
||||||
|
|
||||||
|
+ /* struct used in the array that's given to qsort() */
|
||||||
|
+ typedef struct
|
||||||
|
+ {
|
||||||
|
+ listitem_T *item;
|
||||||
|
+ int idx;
|
||||||
|
+ } sortItem_T;
|
||||||
|
+
|
||||||
|
static int item_compare_ic;
|
||||||
|
static int item_compare_numeric;
|
||||||
|
static char_u *item_compare_func;
|
||||||
|
***************
|
||||||
|
*** 17349,17362 ****
|
||||||
|
const void *s1;
|
||||||
|
const void *s2;
|
||||||
|
{
|
||||||
|
char_u *p1, *p2;
|
||||||
|
char_u *tofree1, *tofree2;
|
||||||
|
int res;
|
||||||
|
char_u numbuf1[NUMBUFLEN];
|
||||||
|
char_u numbuf2[NUMBUFLEN];
|
||||||
|
|
||||||
|
! p1 = tv2string(&(*(listitem_T **)s1)->li_tv, &tofree1, numbuf1, 0);
|
||||||
|
! p2 = tv2string(&(*(listitem_T **)s2)->li_tv, &tofree2, numbuf2, 0);
|
||||||
|
if (p1 == NULL)
|
||||||
|
p1 = (char_u *)"";
|
||||||
|
if (p2 == NULL)
|
||||||
|
--- 17356,17372 ----
|
||||||
|
const void *s1;
|
||||||
|
const void *s2;
|
||||||
|
{
|
||||||
|
+ sortItem_T *si1, *si2;
|
||||||
|
char_u *p1, *p2;
|
||||||
|
char_u *tofree1, *tofree2;
|
||||||
|
int res;
|
||||||
|
char_u numbuf1[NUMBUFLEN];
|
||||||
|
char_u numbuf2[NUMBUFLEN];
|
||||||
|
|
||||||
|
! si1 = (sortItem_T *)s1;
|
||||||
|
! si2 = (sortItem_T *)s2;
|
||||||
|
! p1 = tv2string(&si1->item->li_tv, &tofree1, numbuf1, 0);
|
||||||
|
! p2 = tv2string(&si2->item->li_tv, &tofree2, numbuf2, 0);
|
||||||
|
if (p1 == NULL)
|
||||||
|
p1 = (char_u *)"";
|
||||||
|
if (p2 == NULL)
|
||||||
|
***************
|
||||||
|
*** 17379,17385 ****
|
||||||
|
/* When the result would be zero, compare the pointers themselves. Makes
|
||||||
|
* the sort stable. */
|
||||||
|
if (res == 0 && !item_compare_keep_zero)
|
||||||
|
! res = s1 > s2 ? 1 : -1;
|
||||||
|
|
||||||
|
vim_free(tofree1);
|
||||||
|
vim_free(tofree2);
|
||||||
|
--- 17389,17395 ----
|
||||||
|
/* When the result would be zero, compare the pointers themselves. Makes
|
||||||
|
* the sort stable. */
|
||||||
|
if (res == 0 && !item_compare_keep_zero)
|
||||||
|
! res = si1->idx > si2->idx ? 1 : -1;
|
||||||
|
|
||||||
|
vim_free(tofree1);
|
||||||
|
vim_free(tofree2);
|
||||||
|
***************
|
||||||
|
*** 17394,17399 ****
|
||||||
|
--- 17404,17410 ----
|
||||||
|
const void *s1;
|
||||||
|
const void *s2;
|
||||||
|
{
|
||||||
|
+ sortItem_T *si1, *si2;
|
||||||
|
int res;
|
||||||
|
typval_T rettv;
|
||||||
|
typval_T argv[3];
|
||||||
|
***************
|
||||||
|
*** 17403,17412 ****
|
||||||
|
if (item_compare_func_err)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
/* Copy the values. This is needed to be able to set v_lock to VAR_FIXED
|
||||||
|
* in the copy without changing the original list items. */
|
||||||
|
! copy_tv(&(*(listitem_T **)s1)->li_tv, &argv[0]);
|
||||||
|
! copy_tv(&(*(listitem_T **)s2)->li_tv, &argv[1]);
|
||||||
|
|
||||||
|
rettv.v_type = VAR_UNKNOWN; /* clear_tv() uses this */
|
||||||
|
res = call_func(item_compare_func, (int)STRLEN(item_compare_func),
|
||||||
|
--- 17414,17426 ----
|
||||||
|
if (item_compare_func_err)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
+ si1 = (sortItem_T *)s1;
|
||||||
|
+ si2 = (sortItem_T *)s2;
|
||||||
|
+
|
||||||
|
/* Copy the values. This is needed to be able to set v_lock to VAR_FIXED
|
||||||
|
* in the copy without changing the original list items. */
|
||||||
|
! copy_tv(&si1->item->li_tv, &argv[0]);
|
||||||
|
! copy_tv(&si2->item->li_tv, &argv[1]);
|
||||||
|
|
||||||
|
rettv.v_type = VAR_UNKNOWN; /* clear_tv() uses this */
|
||||||
|
res = call_func(item_compare_func, (int)STRLEN(item_compare_func),
|
||||||
|
***************
|
||||||
|
*** 17426,17432 ****
|
||||||
|
/* When the result would be zero, compare the pointers themselves. Makes
|
||||||
|
* the sort stable. */
|
||||||
|
if (res == 0 && !item_compare_keep_zero)
|
||||||
|
! res = s1 > s2 ? 1 : -1;
|
||||||
|
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
--- 17440,17446 ----
|
||||||
|
/* When the result would be zero, compare the pointers themselves. Makes
|
||||||
|
* the sort stable. */
|
||||||
|
if (res == 0 && !item_compare_keep_zero)
|
||||||
|
! res = si1->idx > si2->idx ? 1 : -1;
|
||||||
|
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
***************
|
||||||
|
*** 17442,17448 ****
|
||||||
|
{
|
||||||
|
list_T *l;
|
||||||
|
listitem_T *li;
|
||||||
|
! listitem_T **ptrs;
|
||||||
|
long len;
|
||||||
|
long i;
|
||||||
|
|
||||||
|
--- 17456,17462 ----
|
||||||
|
{
|
||||||
|
list_T *l;
|
||||||
|
listitem_T *li;
|
||||||
|
! sortItem_T *ptrs;
|
||||||
|
long len;
|
||||||
|
long i;
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 17510,17516 ****
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Make an array with each entry pointing to an item in the List. */
|
||||||
|
! ptrs = (listitem_T **)alloc((int)(len * sizeof(listitem_T *)));
|
||||||
|
if (ptrs == NULL)
|
||||||
|
return;
|
||||||
|
|
||||||
|
--- 17524,17530 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Make an array with each entry pointing to an item in the List. */
|
||||||
|
! ptrs = (sortItem_T *)alloc((int)(len * sizeof(sortItem_T)));
|
||||||
|
if (ptrs == NULL)
|
||||||
|
return;
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 17519,17525 ****
|
||||||
|
{
|
||||||
|
/* sort(): ptrs will be the list to sort */
|
||||||
|
for (li = l->lv_first; li != NULL; li = li->li_next)
|
||||||
|
! ptrs[i++] = li;
|
||||||
|
|
||||||
|
item_compare_func_err = FALSE;
|
||||||
|
item_compare_keep_zero = FALSE;
|
||||||
|
--- 17533,17543 ----
|
||||||
|
{
|
||||||
|
/* sort(): ptrs will be the list to sort */
|
||||||
|
for (li = l->lv_first; li != NULL; li = li->li_next)
|
||||||
|
! {
|
||||||
|
! ptrs[i].item = li;
|
||||||
|
! ptrs[i].idx = i;
|
||||||
|
! ++i;
|
||||||
|
! }
|
||||||
|
|
||||||
|
item_compare_func_err = FALSE;
|
||||||
|
item_compare_keep_zero = FALSE;
|
||||||
|
***************
|
||||||
|
*** 17531,17537 ****
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* Sort the array with item pointers. */
|
||||||
|
! qsort((void *)ptrs, (size_t)len, sizeof(listitem_T *),
|
||||||
|
item_compare_func == NULL ? item_compare : item_compare2);
|
||||||
|
|
||||||
|
if (!item_compare_func_err)
|
||||||
|
--- 17549,17555 ----
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* Sort the array with item pointers. */
|
||||||
|
! qsort((void *)ptrs, (size_t)len, sizeof(sortItem_T),
|
||||||
|
item_compare_func == NULL ? item_compare : item_compare2);
|
||||||
|
|
||||||
|
if (!item_compare_func_err)
|
||||||
|
***************
|
||||||
|
*** 17540,17546 ****
|
||||||
|
l->lv_first = l->lv_last = l->lv_idx_item = NULL;
|
||||||
|
l->lv_len = 0;
|
||||||
|
for (i = 0; i < len; ++i)
|
||||||
|
! list_append(l, ptrs[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
--- 17558,17564 ----
|
||||||
|
l->lv_first = l->lv_last = l->lv_idx_item = NULL;
|
||||||
|
l->lv_len = 0;
|
||||||
|
for (i = 0; i < len; ++i)
|
||||||
|
! list_append(l, ptrs[i].item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
***************
|
||||||
|
*** 17559,17565 ****
|
||||||
|
{
|
||||||
|
if (item_compare_func_ptr((void *)&li, (void *)&li->li_next)
|
||||||
|
== 0)
|
||||||
|
! ptrs[i++] = li;
|
||||||
|
if (item_compare_func_err)
|
||||||
|
{
|
||||||
|
EMSG(_("E882: Uniq compare function failed"));
|
||||||
|
--- 17577,17583 ----
|
||||||
|
{
|
||||||
|
if (item_compare_func_ptr((void *)&li, (void *)&li->li_next)
|
||||||
|
== 0)
|
||||||
|
! ptrs[i++].item = li;
|
||||||
|
if (item_compare_func_err)
|
||||||
|
{
|
||||||
|
EMSG(_("E882: Uniq compare function failed"));
|
||||||
|
***************
|
||||||
|
*** 17571,17582 ****
|
||||||
|
{
|
||||||
|
while (--i >= 0)
|
||||||
|
{
|
||||||
|
! li = ptrs[i]->li_next;
|
||||||
|
! ptrs[i]->li_next = li->li_next;
|
||||||
|
if (li->li_next != NULL)
|
||||||
|
! li->li_next->li_prev = ptrs[i];
|
||||||
|
else
|
||||||
|
! l->lv_last = ptrs[i];
|
||||||
|
list_fix_watch(l, li);
|
||||||
|
listitem_free(li);
|
||||||
|
l->lv_len--;
|
||||||
|
--- 17589,17600 ----
|
||||||
|
{
|
||||||
|
while (--i >= 0)
|
||||||
|
{
|
||||||
|
! li = ptrs[i].item->li_next;
|
||||||
|
! ptrs[i].item->li_next = li->li_next;
|
||||||
|
if (li->li_next != NULL)
|
||||||
|
! li->li_next->li_prev = ptrs[i].item;
|
||||||
|
else
|
||||||
|
! l->lv_last = ptrs[i].item;
|
||||||
|
list_fix_watch(l, li);
|
||||||
|
listitem_free(li);
|
||||||
|
l->lv_len--;
|
||||||
|
*** ../vim-7.4.357/src/version.c 2014-07-09 14:00:45.175044250 +0200
|
||||||
|
--- src/version.c 2014-07-09 17:23:12.791836515 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 358,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
An indication you must be a manager:
|
||||||
|
You can explain to somebody the difference between "re-engineering",
|
||||||
|
"down-sizing", "right-sizing", and "firing people's asses".
|
||||||
|
|
||||||
|
/// 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 ///
|
103
7.4.359
Normal file
103
7.4.359
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.359
|
||||||
|
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.4.359
|
||||||
|
Problem: When 'ttymouse' is set to 'uxterm' the xterm version is not
|
||||||
|
requested. (Tomas Janousek)
|
||||||
|
Solution: Do not mark uxterm as a conflict mouse and add
|
||||||
|
resume_get_esc_sequence().
|
||||||
|
Files: src/term.c, src/os_unix.c, src/proto/term.pro
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.358/src/term.c 2014-05-22 21:22:15.361995652 +0200
|
||||||
|
--- src/term.c 2014-07-09 18:49:57.127730739 +0200
|
||||||
|
***************
|
||||||
|
*** 3330,3335 ****
|
||||||
|
--- 3330,3348 ----
|
||||||
|
return crv_status == CRV_SENT || u7_status == U7_SENT
|
||||||
|
|| xt_index_out > xt_index_in;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * If requesting the version was disabled in did_request_esc_sequence(),
|
||||||
|
+ * enable it again.
|
||||||
|
+ */
|
||||||
|
+ void
|
||||||
|
+ resume_get_esc_sequence()
|
||||||
|
+ {
|
||||||
|
+ if (crv_status == 0)
|
||||||
|
+ crv_status = CRV_GET;
|
||||||
|
+ if (u7_status == 0)
|
||||||
|
+ u7_status = U7_GET;
|
||||||
|
+ }
|
||||||
|
# endif
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.358/src/os_unix.c 2014-05-22 21:22:15.361995652 +0200
|
||||||
|
--- src/os_unix.c 2014-07-09 18:56:58.483722175 +0200
|
||||||
|
***************
|
||||||
|
*** 3780,3788 ****
|
||||||
|
# ifdef FEAT_MOUSE_URXVT
|
||||||
|
/* same as the dec mouse */
|
||||||
|
if (use_xterm_mouse() == 3
|
||||||
|
- # ifdef FEAT_TERMRESPONSE
|
||||||
|
- && !did_request_esc_sequence()
|
||||||
|
- # endif
|
||||||
|
# ifdef FEAT_GUI
|
||||||
|
&& !gui.in_use
|
||||||
|
# endif
|
||||||
|
--- 3780,3785 ----
|
||||||
|
***************
|
||||||
|
*** 3797,3803 ****
|
||||||
|
mch_setmouse(FALSE);
|
||||||
|
setmouse();
|
||||||
|
}
|
||||||
|
! xterm_conflict_mouse = TRUE;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
del_mouse_termcode(KS_URXVT_MOUSE);
|
||||||
|
--- 3794,3801 ----
|
||||||
|
mch_setmouse(FALSE);
|
||||||
|
setmouse();
|
||||||
|
}
|
||||||
|
! /* It's OK to request the xterm version for uxterm. */
|
||||||
|
! resume_get_esc_sequence();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
del_mouse_termcode(KS_URXVT_MOUSE);
|
||||||
|
*** ../vim-7.4.358/src/proto/term.pro 2014-05-22 18:14:27.570224664 +0200
|
||||||
|
--- src/proto/term.pro 2014-07-09 18:53:31.827726375 +0200
|
||||||
|
***************
|
||||||
|
*** 35,40 ****
|
||||||
|
--- 35,41 ----
|
||||||
|
void starttermcap __ARGS((void));
|
||||||
|
void stoptermcap __ARGS((void));
|
||||||
|
int did_request_esc_sequence __ARGS((void));
|
||||||
|
+ void resume_get_esc_sequence __ARGS((void));
|
||||||
|
void may_req_termresponse __ARGS((void));
|
||||||
|
void may_req_ambiguous_char_width __ARGS((void));
|
||||||
|
int swapping_screen __ARGS((void));
|
||||||
|
*** ../vim-7.4.358/src/version.c 2014-07-09 17:51:46.075801693 +0200
|
||||||
|
--- src/version.c 2014-07-09 18:50:55.515729552 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 359,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
An indication you must be a manager:
|
||||||
|
You give constructive feedback to your dog.
|
||||||
|
|
||||||
|
/// 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 ///
|
80
7.4.360
Normal file
80
7.4.360
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.360
|
||||||
|
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.4.360
|
||||||
|
Problem: In a regexp pattern a "$" followed by \v or \V is not seen as the
|
||||||
|
end-of-line.
|
||||||
|
Solution: Handle the situation. (Ozaki Kiichi)
|
||||||
|
Files: src/regexp.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.359/src/regexp.c 2014-05-13 19:37:19.489786520 +0200
|
||||||
|
--- src/regexp.c 2014-07-09 19:28:51.871683287 +0200
|
||||||
|
***************
|
||||||
|
*** 3109,3123 ****
|
||||||
|
if (reg_magic >= MAGIC_OFF)
|
||||||
|
{
|
||||||
|
char_u *p = regparse + 1;
|
||||||
|
|
||||||
|
! /* ignore \c \C \m and \M after '$' */
|
||||||
|
while (p[0] == '\\' && (p[1] == 'c' || p[1] == 'C'
|
||||||
|
! || p[1] == 'm' || p[1] == 'M' || p[1] == 'Z'))
|
||||||
|
p += 2;
|
||||||
|
if (p[0] == NUL
|
||||||
|
|| (p[0] == '\\'
|
||||||
|
&& (p[1] == '|' || p[1] == '&' || p[1] == ')'
|
||||||
|
|| p[1] == 'n'))
|
||||||
|
|| reg_magic == MAGIC_ALL)
|
||||||
|
curchr = Magic('$');
|
||||||
|
}
|
||||||
|
--- 3109,3133 ----
|
||||||
|
if (reg_magic >= MAGIC_OFF)
|
||||||
|
{
|
||||||
|
char_u *p = regparse + 1;
|
||||||
|
+ int is_magic_all = (reg_magic == MAGIC_ALL);
|
||||||
|
|
||||||
|
! /* ignore \c \C \m \M \v \V and \Z after '$' */
|
||||||
|
while (p[0] == '\\' && (p[1] == 'c' || p[1] == 'C'
|
||||||
|
! || p[1] == 'm' || p[1] == 'M'
|
||||||
|
! || p[1] == 'v' || p[1] == 'V' || p[1] == 'Z'))
|
||||||
|
! {
|
||||||
|
! if (p[1] == 'v')
|
||||||
|
! is_magic_all = TRUE;
|
||||||
|
! else if (p[1] == 'm' || p[1] == 'M' || p[1] == 'V')
|
||||||
|
! is_magic_all = FALSE;
|
||||||
|
p += 2;
|
||||||
|
+ }
|
||||||
|
if (p[0] == NUL
|
||||||
|
|| (p[0] == '\\'
|
||||||
|
&& (p[1] == '|' || p[1] == '&' || p[1] == ')'
|
||||||
|
|| p[1] == 'n'))
|
||||||
|
+ || (is_magic_all
|
||||||
|
+ && (p[0] == '|' || p[0] == '&' || p[0] == ')'))
|
||||||
|
|| reg_magic == MAGIC_ALL)
|
||||||
|
curchr = Magic('$');
|
||||||
|
}
|
||||||
|
*** ../vim-7.4.359/src/version.c 2014-07-09 19:13:45.007701718 +0200
|
||||||
|
--- src/version.c 2014-07-09 19:18:36.599695792 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 360,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
An indication you must be a manager:
|
||||||
|
You believe you never have any problems in your life, just
|
||||||
|
"issues" and "improvement opportunities".
|
||||||
|
|
||||||
|
/// 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.4.361
Normal file
48
7.4.361
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.361
|
||||||
|
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.4.361
|
||||||
|
Problem: Lots of flickering when filling the preview window for 'omnifunc'.
|
||||||
|
Solution: Disable redrawing. (Hirohito Higashi)
|
||||||
|
Files: src/popupmnu.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.360/src/popupmnu.c 2013-11-06 04:04:29.000000000 +0100
|
||||||
|
--- src/popupmnu.c 2014-07-09 19:56:25.663649674 +0200
|
||||||
|
***************
|
||||||
|
*** 567,573 ****
|
||||||
|
--- 567,575 ----
|
||||||
|
g_do_tagpreview = 3;
|
||||||
|
if (p_pvh > 0 && p_pvh < g_do_tagpreview)
|
||||||
|
g_do_tagpreview = p_pvh;
|
||||||
|
+ ++RedrawingDisabled;
|
||||||
|
resized = prepare_tagpreview(FALSE);
|
||||||
|
+ --RedrawingDisabled;
|
||||||
|
g_do_tagpreview = 0;
|
||||||
|
|
||||||
|
if (curwin->w_p_pvw)
|
||||||
|
*** ../vim-7.4.360/src/version.c 2014-07-09 19:32:30.939678834 +0200
|
||||||
|
--- src/version.c 2014-07-09 19:55:48.995650419 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 361,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Lose weight, NEVER Diet again with
|
||||||
|
The "Invisible Weight Loss Patch"
|
||||||
|
(spam e-mail)
|
||||||
|
|
||||||
|
/// 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 ///
|
53
7.4.362
Normal file
53
7.4.362
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.362
|
||||||
|
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.4.362
|
||||||
|
Problem: When matchaddpos() uses a length smaller than the number of bytes
|
||||||
|
in the (last) character the highlight continues until the end of
|
||||||
|
the line.
|
||||||
|
Solution: Change condition from equal to larger-or-equal.
|
||||||
|
Files: src/screen.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.361/src/screen.c 2014-07-03 22:54:04.911859458 +0200
|
||||||
|
--- src/screen.c 2014-07-09 20:14:46.611627298 +0200
|
||||||
|
***************
|
||||||
|
*** 3852,3858 ****
|
||||||
|
{
|
||||||
|
shl->attr_cur = shl->attr;
|
||||||
|
}
|
||||||
|
! else if (v == (long)shl->endcol)
|
||||||
|
{
|
||||||
|
shl->attr_cur = 0;
|
||||||
|
next_search_hl(wp, shl, lnum, (colnr_T)v, cur);
|
||||||
|
--- 3852,3858 ----
|
||||||
|
{
|
||||||
|
shl->attr_cur = shl->attr;
|
||||||
|
}
|
||||||
|
! else if (v >= (long)shl->endcol)
|
||||||
|
{
|
||||||
|
shl->attr_cur = 0;
|
||||||
|
next_search_hl(wp, shl, lnum, (colnr_T)v, cur);
|
||||||
|
*** ../vim-7.4.361/src/version.c 2014-07-09 19:58:21.115647328 +0200
|
||||||
|
--- src/version.c 2014-07-09 20:20:14.423620635 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 362,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Compilation process failed successfully.
|
||||||
|
|
||||||
|
/// 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 ///
|
160
7.4.363
Normal file
160
7.4.363
Normal file
@ -0,0 +1,160 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.363
|
||||||
|
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.4.363
|
||||||
|
Problem: In Windows console typing 0xCE does not work.
|
||||||
|
Solution: Convert 0xCE to K_NUL 3. (Nobuhiro Takasaki et al.)
|
||||||
|
Files: src/os_win32.c, src/term.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.362/src/os_win32.c 2014-04-01 21:00:45.436733663 +0200
|
||||||
|
--- src/os_win32.c 2014-07-09 20:29:30.787609327 +0200
|
||||||
|
***************
|
||||||
|
*** 619,625 ****
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
! tokenPrivileges.PrivilegeCount = 1;
|
||||||
|
tokenPrivileges.Privileges[0].Luid = luid;
|
||||||
|
tokenPrivileges.Privileges[0].Attributes = bEnable ?
|
||||||
|
SE_PRIVILEGE_ENABLED : 0;
|
||||||
|
--- 619,625 ----
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
! tokenPrivileges.PrivilegeCount = 1;
|
||||||
|
tokenPrivileges.Privileges[0].Luid = luid;
|
||||||
|
tokenPrivileges.Privileges[0].Attributes = bEnable ?
|
||||||
|
SE_PRIVILEGE_ENABLED : 0;
|
||||||
|
***************
|
||||||
|
*** 1785,1797 ****
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
int n = 1;
|
||||||
|
|
||||||
|
- /* A key may have one or two bytes. */
|
||||||
|
typeahead[typeaheadlen] = c;
|
||||||
|
if (ch2 != NUL)
|
||||||
|
{
|
||||||
|
! typeahead[typeaheadlen + 1] = ch2;
|
||||||
|
! ++n;
|
||||||
|
}
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
/* Only convert normal characters, not special keys. Need to
|
||||||
|
--- 1785,1798 ----
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
int n = 1;
|
||||||
|
+ int conv = FALSE;
|
||||||
|
|
||||||
|
typeahead[typeaheadlen] = c;
|
||||||
|
if (ch2 != NUL)
|
||||||
|
{
|
||||||
|
! typeahead[typeaheadlen + 1] = 3;
|
||||||
|
! typeahead[typeaheadlen + 2] = ch2;
|
||||||
|
! n += 2;
|
||||||
|
}
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
/* Only convert normal characters, not special keys. Need to
|
||||||
|
***************
|
||||||
|
*** 1800,1805 ****
|
||||||
|
--- 1801,1807 ----
|
||||||
|
if (input_conv.vc_type != CONV_NONE
|
||||||
|
&& (ch2 == NUL || c != K_NUL))
|
||||||
|
{
|
||||||
|
+ conv = TRUE;
|
||||||
|
typeaheadlen -= unconverted;
|
||||||
|
n = convert_input_safe(typeahead + typeaheadlen,
|
||||||
|
n + unconverted, TYPEAHEADLEN - typeaheadlen,
|
||||||
|
***************
|
||||||
|
*** 1807,1812 ****
|
||||||
|
--- 1809,1832 ----
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+ if (conv)
|
||||||
|
+ {
|
||||||
|
+ char_u *p = typeahead + typeaheadlen;
|
||||||
|
+ char_u *e = typeahead + TYPEAHEADLEN;
|
||||||
|
+
|
||||||
|
+ while (*p && p < e)
|
||||||
|
+ {
|
||||||
|
+ if (*p == K_NUL)
|
||||||
|
+ {
|
||||||
|
+ ++p;
|
||||||
|
+ mch_memmove(p + 1, p, ((size_t)(e - p)) - 1);
|
||||||
|
+ *p = 3;
|
||||||
|
+ ++n;
|
||||||
|
+ }
|
||||||
|
+ ++p;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
/* Use the ALT key to set the 8th bit of the character
|
||||||
|
* when it's one byte, the 8th bit isn't set yet and not
|
||||||
|
* using a double-byte encoding (would become a lead
|
||||||
|
*** ../vim-7.4.362/src/term.c 2014-07-09 19:13:45.003701718 +0200
|
||||||
|
--- src/term.c 2014-07-09 20:26:28.655613029 +0200
|
||||||
|
***************
|
||||||
|
*** 3724,3730 ****
|
||||||
|
--- 3724,3734 ----
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ #if defined(WIN3264) && !defined(FEAT_GUI)
|
||||||
|
+ s = vim_strnsave(string, (int)STRLEN(string) + 1);
|
||||||
|
+ #else
|
||||||
|
s = vim_strsave(string);
|
||||||
|
+ #endif
|
||||||
|
if (s == NULL)
|
||||||
|
return;
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 3734,3739 ****
|
||||||
|
--- 3738,3752 ----
|
||||||
|
STRMOVE(s, s + 1);
|
||||||
|
s[0] = term_7to8bit(string);
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ #if defined(WIN3264) && !defined(FEAT_GUI)
|
||||||
|
+ if (s[0] == K_NUL)
|
||||||
|
+ {
|
||||||
|
+ STRMOVE(s + 1, s);
|
||||||
|
+ s[1] = 3;
|
||||||
|
+ }
|
||||||
|
+ #endif
|
||||||
|
+
|
||||||
|
len = (int)STRLEN(s);
|
||||||
|
|
||||||
|
need_gather = TRUE; /* need to fill termleader[] */
|
||||||
|
*** ../vim-7.4.362/src/version.c 2014-07-09 20:20:40.359620108 +0200
|
||||||
|
--- src/version.c 2014-07-09 20:26:38.903612821 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 363,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
BROTHER MAYNARD: Armaments Chapter Two Verses Nine to Twenty One.
|
||||||
|
ANOTHER MONK: And St. Attila raised his hand grenade up on high saying "O
|
||||||
|
Lord bless this thy hand grenade that with it thou mayest
|
||||||
|
blow thine enemies to tiny bits, in thy mercy. "and the Lord
|
||||||
|
did grin and people did feast upon the lambs and sloths and
|
||||||
|
carp and anchovies and orang-utans and breakfast cereals and
|
||||||
|
fruit bats and...
|
||||||
|
BROTHER MAYNARD: Skip a bit brother ...
|
||||||
|
"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 ///
|
70
7.4.364
Normal file
70
7.4.364
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.364
|
||||||
|
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.4.364
|
||||||
|
Problem: When the viminfo file can't be renamed there is no error message.
|
||||||
|
(Vladimir Berezhnoy)
|
||||||
|
Solution: Check for the rename to fail.
|
||||||
|
Files: src/ex_cmds.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.363/src/ex_cmds.c 2014-05-22 14:00:12.694534712 +0200
|
||||||
|
--- src/ex_cmds.c 2014-07-09 21:11:44.531557830 +0200
|
||||||
|
***************
|
||||||
|
*** 2004,2014 ****
|
||||||
|
{
|
||||||
|
fclose(fp_in);
|
||||||
|
|
||||||
|
! /*
|
||||||
|
! * In case of an error keep the original viminfo file.
|
||||||
|
! * Otherwise rename the newly written file.
|
||||||
|
! */
|
||||||
|
! if (viminfo_errcnt || vim_rename(tempname, fname) == -1)
|
||||||
|
mch_remove(tempname);
|
||||||
|
|
||||||
|
#ifdef WIN3264
|
||||||
|
--- 2004,2017 ----
|
||||||
|
{
|
||||||
|
fclose(fp_in);
|
||||||
|
|
||||||
|
! /* In case of an error keep the original viminfo file. Otherwise
|
||||||
|
! * rename the newly written file. Give an error if that fails. */
|
||||||
|
! if (viminfo_errcnt == 0 && vim_rename(tempname, fname) == -1)
|
||||||
|
! {
|
||||||
|
! ++viminfo_errcnt;
|
||||||
|
! EMSG2(_("E886: Can't rename viminfo file to %s!"), fname);
|
||||||
|
! }
|
||||||
|
! if (viminfo_errcnt > 0)
|
||||||
|
mch_remove(tempname);
|
||||||
|
|
||||||
|
#ifdef WIN3264
|
||||||
|
*** ../vim-7.4.363/src/version.c 2014-07-09 20:51:04.519583033 +0200
|
||||||
|
--- src/version.c 2014-07-09 21:13:18.575555919 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 364,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
MONK: ... and the Lord spake, saying, "First shalt thou take out the Holy Pin,
|
||||||
|
then shalt thou count to three, no more, no less. Three shalt be the
|
||||||
|
number thou shalt count, and the number of the counting shalt be three.
|
||||||
|
Four shalt thou not count, neither count thou two, excepting that thou
|
||||||
|
then proceed to three. Five is right out. Once the number three, being
|
||||||
|
the third number, be reached, then lobbest thou thy Holy Hand Grenade of
|
||||||
|
Antioch towards thou foe, who being naughty in my sight, shall snuff it.
|
||||||
|
"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 ///
|
159
7.4.365
Normal file
159
7.4.365
Normal file
@ -0,0 +1,159 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.365
|
||||||
|
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.4.365
|
||||||
|
Problem: Crash when using ":botright split" when there isn't much space.
|
||||||
|
Solution: Add a check for the minimum width/height. (Yukihiro Nakadaira)
|
||||||
|
Files: src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.364/src/window.c 2014-07-02 17:16:51.334225522 +0200
|
||||||
|
--- src/window.c 2014-07-16 14:14:37.751774230 +0200
|
||||||
|
***************
|
||||||
|
*** 686,691 ****
|
||||||
|
--- 686,693 ----
|
||||||
|
int layout;
|
||||||
|
frame_T *frp, *curfrp;
|
||||||
|
int before;
|
||||||
|
+ int minwidth;
|
||||||
|
+ int minheight;
|
||||||
|
|
||||||
|
if (flags & WSP_TOP)
|
||||||
|
oldwin = firstwin;
|
||||||
|
***************
|
||||||
|
*** 725,735 ****
|
||||||
|
needed += p_wiw - p_wmw;
|
||||||
|
if (p_ea || (flags & (WSP_BOT | WSP_TOP)))
|
||||||
|
{
|
||||||
|
available = topframe->fr_width;
|
||||||
|
! needed += frame_minwidth(topframe, NULL);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
available = oldwin->w_width;
|
||||||
|
if (available < needed && new_wp == NULL)
|
||||||
|
{
|
||||||
|
EMSG(_(e_noroom));
|
||||||
|
--- 727,741 ----
|
||||||
|
needed += p_wiw - p_wmw;
|
||||||
|
if (p_ea || (flags & (WSP_BOT | WSP_TOP)))
|
||||||
|
{
|
||||||
|
+ minwidth = frame_minwidth(topframe, NULL);
|
||||||
|
available = topframe->fr_width;
|
||||||
|
! needed += minwidth;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
+ {
|
||||||
|
+ minwidth = frame_minwidth(oldwin->w_frame, NULL);
|
||||||
|
available = oldwin->w_width;
|
||||||
|
+ }
|
||||||
|
if (available < needed && new_wp == NULL)
|
||||||
|
{
|
||||||
|
EMSG(_(e_noroom));
|
||||||
|
***************
|
||||||
|
*** 739,744 ****
|
||||||
|
--- 745,752 ----
|
||||||
|
new_size = oldwin->w_width / 2;
|
||||||
|
if (new_size > oldwin->w_width - p_wmw - 1)
|
||||||
|
new_size = oldwin->w_width - p_wmw - 1;
|
||||||
|
+ if (new_size > available - minwidth - 1)
|
||||||
|
+ new_size = available - minwidth - 1;
|
||||||
|
if (new_size < p_wmw)
|
||||||
|
new_size = p_wmw;
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 786,796 ****
|
||||||
|
needed += p_wh - p_wmh;
|
||||||
|
if (p_ea || (flags & (WSP_BOT | WSP_TOP)))
|
||||||
|
{
|
||||||
|
available = topframe->fr_height;
|
||||||
|
! needed += frame_minheight(topframe, NULL);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
available = oldwin->w_height;
|
||||||
|
needed += p_wmh;
|
||||||
|
}
|
||||||
|
--- 794,806 ----
|
||||||
|
needed += p_wh - p_wmh;
|
||||||
|
if (p_ea || (flags & (WSP_BOT | WSP_TOP)))
|
||||||
|
{
|
||||||
|
+ minheight = frame_minheight(topframe, NULL);
|
||||||
|
available = topframe->fr_height;
|
||||||
|
! needed += minheight;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
+ minheight = frame_minheight(oldwin->w_frame, NULL);
|
||||||
|
available = oldwin->w_height;
|
||||||
|
needed += p_wmh;
|
||||||
|
}
|
||||||
|
***************
|
||||||
|
*** 810,815 ****
|
||||||
|
--- 820,827 ----
|
||||||
|
|
||||||
|
if (new_size > oldwin_height - p_wmh - STATUS_HEIGHT)
|
||||||
|
new_size = oldwin_height - p_wmh - STATUS_HEIGHT;
|
||||||
|
+ if (new_size > available - minheight - STATUS_HEIGHT)
|
||||||
|
+ new_size = available - minheight - STATUS_HEIGHT;
|
||||||
|
if (new_size < p_wmh)
|
||||||
|
new_size = p_wmh;
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 5732,5738 ****
|
||||||
|
--wp->w_wrow;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
! set_topline(wp, lnum);
|
||||||
|
}
|
||||||
|
else if (sline > 0)
|
||||||
|
{
|
||||||
|
--- 5744,5750 ----
|
||||||
|
--wp->w_wrow;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
! set_topline(wp, lnum);
|
||||||
|
}
|
||||||
|
else if (sline > 0)
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 5778,5784 ****
|
||||||
|
wp->w_wrow -= sline;
|
||||||
|
}
|
||||||
|
|
||||||
|
! set_topline(wp, lnum);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
--- 5790,5796 ----
|
||||||
|
wp->w_wrow -= sline;
|
||||||
|
}
|
||||||
|
|
||||||
|
! set_topline(wp, lnum);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
*** ../vim-7.4.364/src/version.c 2014-07-09 21:17:59.755550204 +0200
|
||||||
|
--- src/version.c 2014-07-16 14:10:41.191779038 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 365,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
"Software is like sex... it's better when it's free."
|
||||||
|
-- Linus Torvalds, initiator of the free Linux OS
|
||||||
|
Makes me wonder what FSF stands for...?
|
||||||
|
|
||||||
|
/// 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 ///
|
53
7.4.366
Normal file
53
7.4.366
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.366
|
||||||
|
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.4.366
|
||||||
|
Problem: Can't run the linebreak test on MS-Windows.
|
||||||
|
Solution: Fix the output file name. (Taro Muraoka)
|
||||||
|
Files: src/testdir/Make_dos.mak
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.365/src/testdir/Make_dos.mak 2014-07-02 19:59:35.454375136 +0200
|
||||||
|
--- src/testdir/Make_dos.mak 2014-07-16 14:19:39.719768093 +0200
|
||||||
|
***************
|
||||||
|
*** 37,43 ****
|
||||||
|
test105.out test106.out test107.out\
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
! test_listlbr \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
--- 37,43 ----
|
||||||
|
test105.out test106.out test107.out\
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
! test_listlbr.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.365/src/version.c 2014-07-16 14:16:41.519771715 +0200
|
||||||
|
--- src/version.c 2014-07-16 14:18:43.307769239 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 366,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
<Beeth> Girls are like internet domain names,
|
||||||
|
the ones I like are already taken.
|
||||||
|
<honx> Well, you can stil get one from a strange country :-P
|
||||||
|
|
||||||
|
/// 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 ///
|
67
7.4.367
Normal file
67
7.4.367
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.367
|
||||||
|
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.4.367 (after 7.4.357)
|
||||||
|
Problem: Other solution for redrawing after completion.
|
||||||
|
Solution: Schedule a window redraw instead of just clearing the command
|
||||||
|
line. (Jacob Niehus)
|
||||||
|
Files: src/edit.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.366/src/edit.c 2014-07-09 14:00:45.175044250 +0200
|
||||||
|
--- src/edit.c 2014-07-16 14:36:00.679748155 +0200
|
||||||
|
***************
|
||||||
|
*** 3854,3860 ****
|
||||||
|
ins_compl_free();
|
||||||
|
compl_started = FALSE;
|
||||||
|
compl_matches = 0;
|
||||||
|
! msg_clr_cmdline(); /* necessary for "noshowmode" */
|
||||||
|
ctrl_x_mode = 0;
|
||||||
|
compl_enter_selects = FALSE;
|
||||||
|
if (edit_submode != NULL)
|
||||||
|
--- 3854,3861 ----
|
||||||
|
ins_compl_free();
|
||||||
|
compl_started = FALSE;
|
||||||
|
compl_matches = 0;
|
||||||
|
! if (!shortmess(SHM_COMPLETIONMENU))
|
||||||
|
! msg_clr_cmdline(); /* necessary for "noshowmode" */
|
||||||
|
ctrl_x_mode = 0;
|
||||||
|
compl_enter_selects = FALSE;
|
||||||
|
if (edit_submode != NULL)
|
||||||
|
***************
|
||||||
|
*** 4591,4597 ****
|
||||||
|
--- 4592,4601 ----
|
||||||
|
*/
|
||||||
|
i = compl_col + (compl_cont_status & CONT_ADDING ? compl_length : 0);
|
||||||
|
backspace_until_column(i);
|
||||||
|
+
|
||||||
|
+ /* Not sure what is still valid, better redraw everything. */
|
||||||
|
changed_cline_bef_curs();
|
||||||
|
+ redraw_curbuf_later(NOT_VALID);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Insert the new text being completed. */
|
||||||
|
*** ../vim-7.4.366/src/version.c 2014-07-16 14:20:38.255766903 +0200
|
||||||
|
--- src/version.c 2014-07-16 14:42:23.059740384 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 367,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
No children may attend school with their breath smelling of "wild onions."
|
||||||
|
[real standing law in West Virginia, United States of America]
|
||||||
|
|
||||||
|
/// 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 ///
|
79
7.4.368
Normal file
79
7.4.368
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.368
|
||||||
|
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.4.368
|
||||||
|
Problem: Restoring the window sizes after closing the command line window
|
||||||
|
doesn't work properly if there are nested splits.
|
||||||
|
Solution: Restore the sizes twice. (Hirohito Higashi)
|
||||||
|
Files: src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.367/src/window.c 2014-07-16 14:16:41.519771715 +0200
|
||||||
|
--- src/window.c 2014-07-16 15:13:52.895701974 +0200
|
||||||
|
***************
|
||||||
|
*** 4848,4862 ****
|
||||||
|
garray_T *gap;
|
||||||
|
{
|
||||||
|
win_T *wp;
|
||||||
|
! int i;
|
||||||
|
|
||||||
|
if (win_count() * 2 == gap->ga_len)
|
||||||
|
{
|
||||||
|
! i = 0;
|
||||||
|
! for (wp = firstwin; wp != NULL; wp = wp->w_next)
|
||||||
|
{
|
||||||
|
! frame_setwidth(wp->w_frame, ((int *)gap->ga_data)[i++]);
|
||||||
|
! win_setheight_win(((int *)gap->ga_data)[i++], wp);
|
||||||
|
}
|
||||||
|
/* recompute the window positions */
|
||||||
|
(void)win_comp_pos();
|
||||||
|
--- 4848,4867 ----
|
||||||
|
garray_T *gap;
|
||||||
|
{
|
||||||
|
win_T *wp;
|
||||||
|
! int i, j;
|
||||||
|
|
||||||
|
if (win_count() * 2 == gap->ga_len)
|
||||||
|
{
|
||||||
|
! /* The order matters, because frames contain other frames, but it's
|
||||||
|
! * difficult to get right. The easy way out is to do it twice. */
|
||||||
|
! for (j = 0; j < 2; ++j)
|
||||||
|
{
|
||||||
|
! i = 0;
|
||||||
|
! for (wp = firstwin; wp != NULL; wp = wp->w_next)
|
||||||
|
! {
|
||||||
|
! frame_setwidth(wp->w_frame, ((int *)gap->ga_data)[i++]);
|
||||||
|
! win_setheight_win(((int *)gap->ga_data)[i++], wp);
|
||||||
|
! }
|
||||||
|
}
|
||||||
|
/* recompute the window positions */
|
||||||
|
(void)win_comp_pos();
|
||||||
|
*** ../vim-7.4.367/src/version.c 2014-07-16 14:42:37.923740082 +0200
|
||||||
|
--- src/version.c 2014-07-16 15:14:46.035700894 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 368,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
FROG: How you English say: I one more time, mac, I unclog my nose towards
|
||||||
|
you, sons of a window-dresser, so, you think you could out-clever us
|
||||||
|
French fellows with your silly knees-bent creeping about advancing
|
||||||
|
behaviour. (blows a raspberry) I wave my private parts at your aunties,
|
||||||
|
you brightly-coloured, mealy-templed, cranberry-smelling, electric
|
||||||
|
donkey-bottom biters.
|
||||||
|
"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 ///
|
70
7.4.369
Normal file
70
7.4.369
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.369
|
||||||
|
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.4.369
|
||||||
|
Problem: Using freed memory when exiting while compiled with EXITFREE.
|
||||||
|
Solution: Set curwin to NULL and check for that. (Dominique Pelle)
|
||||||
|
Files: src/buffer.c, src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.368/src/buffer.c 2014-06-12 14:01:27.571769788 +0200
|
||||||
|
--- src/buffer.c 2014-07-16 16:20:04.443621254 +0200
|
||||||
|
***************
|
||||||
|
*** 5702,5709 ****
|
||||||
|
signlist_T *next;
|
||||||
|
|
||||||
|
/* When deleting the last sign need to redraw the windows to remove the
|
||||||
|
! * sign column. */
|
||||||
|
! if (buf->b_signlist != NULL)
|
||||||
|
{
|
||||||
|
redraw_buf_later(buf, NOT_VALID);
|
||||||
|
changed_cline_bef_curs();
|
||||||
|
--- 5702,5709 ----
|
||||||
|
signlist_T *next;
|
||||||
|
|
||||||
|
/* When deleting the last sign need to redraw the windows to remove the
|
||||||
|
! * sign column. Not when curwin is NULL (this means we're exiting). */
|
||||||
|
! if (buf->b_signlist != NULL && curwin != NULL)
|
||||||
|
{
|
||||||
|
redraw_buf_later(buf, NOT_VALID);
|
||||||
|
changed_cline_bef_curs();
|
||||||
|
*** ../vim-7.4.368/src/window.c 2014-07-16 15:18:22.903696486 +0200
|
||||||
|
--- src/window.c 2014-07-16 16:15:41.063626607 +0200
|
||||||
|
***************
|
||||||
|
*** 2489,2494 ****
|
||||||
|
--- 2489,2498 ----
|
||||||
|
|
||||||
|
while (firstwin != NULL)
|
||||||
|
(void)win_free_mem(firstwin, &dummy, NULL);
|
||||||
|
+
|
||||||
|
+ /* No window should be used after this. Set curwin to NULL to crash
|
||||||
|
+ * instead of using freed memory. */
|
||||||
|
+ curwin = NULL;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
*** ../vim-7.4.368/src/version.c 2014-07-16 15:18:22.907696486 +0200
|
||||||
|
--- src/version.c 2014-07-16 16:18:36.827623035 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 369,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
ARTHUR: If you do not open these doors, we will take this castle by force ...
|
||||||
|
[A bucket of slops land on ARTHUR. He tries to retain his dignity.]
|
||||||
|
"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 ///
|
316
7.4.370
Normal file
316
7.4.370
Normal file
@ -0,0 +1,316 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.370
|
||||||
|
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.4.370
|
||||||
|
Problem: Linebreak test fails when encoding is not utf-8. (Danek Duvall)
|
||||||
|
Solution: Split the test in a single byte one and a utf-8 one. (Christian
|
||||||
|
Brabandt)
|
||||||
|
Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
|
||||||
|
src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
|
||||||
|
src/testdir/Make_vms.mms, src/testdir/Makefile,
|
||||||
|
src/testdir/test_listlbr.in, src/testdir/test_listlbr.ok,
|
||||||
|
src/testdir/test_listlbr_utf8.in, src/testdir/test_listlbr_utf8.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.369/src/testdir/Make_amiga.mak 2014-07-02 19:59:35.454375136 +0200
|
||||||
|
--- src/testdir/Make_amiga.mak 2014-07-16 16:55:15.311578352 +0200
|
||||||
|
***************
|
||||||
|
*** 39,44 ****
|
||||||
|
--- 39,45 ----
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
+ test_listlbr_utf8.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 167,171 ****
|
||||||
|
--- 168,173 ----
|
||||||
|
test_autoformat_join.out: test_autoformat_join.in
|
||||||
|
test_breakindent.out: test_breakindent.in
|
||||||
|
test_listlbr.out: test_listlbr.in
|
||||||
|
+ test_listlbr_utf8.out: test_listlbr_utf8.in
|
||||||
|
test_eval.out: test_eval.in
|
||||||
|
test_options.out: test_options.in
|
||||||
|
*** ../vim-7.4.369/src/testdir/Make_dos.mak 2014-07-16 14:20:38.255766903 +0200
|
||||||
|
--- src/testdir/Make_dos.mak 2014-07-16 16:56:02.423577394 +0200
|
||||||
|
***************
|
||||||
|
*** 38,43 ****
|
||||||
|
--- 38,44 ----
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
+ test_listlbr_utf8.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.369/src/testdir/Make_ming.mak 2014-07-02 19:59:35.454375136 +0200
|
||||||
|
--- src/testdir/Make_ming.mak 2014-07-16 16:55:15.311578352 +0200
|
||||||
|
***************
|
||||||
|
*** 58,63 ****
|
||||||
|
--- 58,64 ----
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
+ test_listlbr_utf8.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.369/src/testdir/Make_os2.mak 2014-07-02 19:59:35.454375136 +0200
|
||||||
|
--- src/testdir/Make_os2.mak 2014-07-16 16:55:15.311578352 +0200
|
||||||
|
***************
|
||||||
|
*** 40,45 ****
|
||||||
|
--- 40,46 ----
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
+ test_listlbr_utf8.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.369/src/testdir/Make_vms.mms 2014-07-02 19:59:35.454375136 +0200
|
||||||
|
--- src/testdir/Make_vms.mms 2014-07-16 16:55:15.311578352 +0200
|
||||||
|
***************
|
||||||
|
*** 99,104 ****
|
||||||
|
--- 99,105 ----
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
+ test_listlbr_utf8.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.369/src/testdir/Makefile 2014-07-02 19:59:35.454375136 +0200
|
||||||
|
--- src/testdir/Makefile 2014-07-16 16:55:15.311578352 +0200
|
||||||
|
***************
|
||||||
|
*** 36,41 ****
|
||||||
|
--- 36,42 ----
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
+ test_listlbr_utf8.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.369/src/testdir/test_listlbr.in 2014-07-02 19:59:35.454375136 +0200
|
||||||
|
--- src/testdir/test_listlbr.in 2014-07-16 16:55:15.311578352 +0200
|
||||||
|
***************
|
||||||
|
*** 1,10 ****
|
||||||
|
! Test for linebreak and list option
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:so small.vim
|
||||||
|
:if !exists("+linebreak") | e! test.ok | w! test.out | qa! | endif
|
||||||
|
:10new|:vsp|:vert resize 20
|
||||||
|
! :put =\"\tabcdef hijklmn\tpqrstuvwxyz\u00a01060ABCDEFGHIJKLMNOP \"
|
||||||
|
:norm! zt
|
||||||
|
:set ts=4 sw=4 sts=4 linebreak sbr=+ wrap
|
||||||
|
:fu! ScreenChar(width)
|
||||||
|
--- 1,10 ----
|
||||||
|
! Test for linebreak and list option (non-utf8)
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:so small.vim
|
||||||
|
:if !exists("+linebreak") | e! test.ok | w! test.out | qa! | endif
|
||||||
|
:10new|:vsp|:vert resize 20
|
||||||
|
! :put =\"\tabcdef hijklmn\tpqrstuvwxyz_1060ABCDEFGHIJKLMNOP \"
|
||||||
|
:norm! zt
|
||||||
|
:set ts=4 sw=4 sts=4 linebreak sbr=+ wrap
|
||||||
|
:fu! ScreenChar(width)
|
||||||
|
***************
|
||||||
|
*** 32,53 ****
|
||||||
|
:redraw!
|
||||||
|
:let line=ScreenChar(winwidth(0))
|
||||||
|
:call DoRecordScreen()
|
||||||
|
! :let g:test ="Test 3: set linebreak + set list + fancy listchars"
|
||||||
|
! :exe "set linebreak list listchars=nbsp:\u2423,tab:\u2595\u2014,trail:\u02d1,eol:\ub6"
|
||||||
|
! :redraw!
|
||||||
|
! :let line=ScreenChar(winwidth(0))
|
||||||
|
! :call DoRecordScreen()
|
||||||
|
! :let g:test ="Test 4: set linebreak nolist"
|
||||||
|
:set nolist linebreak
|
||||||
|
:redraw!
|
||||||
|
:let line=ScreenChar(winwidth(0))
|
||||||
|
:call DoRecordScreen()
|
||||||
|
! :let g:test ="Test 5: set nolinebreak list"
|
||||||
|
! :set list nolinebreak
|
||||||
|
! :redraw!
|
||||||
|
! :let line=ScreenChar(winwidth(0))
|
||||||
|
! :call DoRecordScreen()
|
||||||
|
! :let g:test ="Test 6: set linebreak with tab and 1 line as long as screen: should break!"
|
||||||
|
:set nolist linebreak ts=8
|
||||||
|
:let line="1\t".repeat('a', winwidth(0)-2)
|
||||||
|
:$put =line
|
||||||
|
--- 32,43 ----
|
||||||
|
:redraw!
|
||||||
|
:let line=ScreenChar(winwidth(0))
|
||||||
|
:call DoRecordScreen()
|
||||||
|
! :let g:test ="Test 3: set linebreak nolist"
|
||||||
|
:set nolist linebreak
|
||||||
|
:redraw!
|
||||||
|
:let line=ScreenChar(winwidth(0))
|
||||||
|
:call DoRecordScreen()
|
||||||
|
! :let g:test ="Test 4: set linebreak with tab and 1 line as long as screen: should break!"
|
||||||
|
:set nolist linebreak ts=8
|
||||||
|
:let line="1\t".repeat('a', winwidth(0)-2)
|
||||||
|
:$put =line
|
||||||
|
*** ../vim-7.4.369/src/testdir/test_listlbr.ok 2014-07-02 19:59:35.454375136 +0200
|
||||||
|
--- src/testdir/test_listlbr.ok 2014-07-16 16:55:15.315578352 +0200
|
||||||
|
***************
|
||||||
|
*** 1,38 ****
|
||||||
|
|
||||||
|
! abcdef hijklmn pqrstuvwxyz 1060ABCDEFGHIJKLMNOP
|
||||||
|
|
||||||
|
Test 1: set linebreak
|
||||||
|
abcdef
|
||||||
|
+hijklmn
|
||||||
|
! +pqrstuvwxyz 1060ABC
|
||||||
|
+DEFGHIJKLMNOP
|
||||||
|
|
||||||
|
Test 2: set linebreak + set list
|
||||||
|
^Iabcdef hijklmn^I
|
||||||
|
! +pqrstuvwxyz 1060ABC
|
||||||
|
+DEFGHIJKLMNOP
|
||||||
|
|
||||||
|
|
||||||
|
! Test 3: set linebreak + set list + fancy listchars
|
||||||
|
! ▕———abcdef
|
||||||
|
! +hijklmn▕———
|
||||||
|
! +pqrstuvwxyz␣1060ABC
|
||||||
|
! +DEFGHIJKLMNOPˑ¶
|
||||||
|
!
|
||||||
|
! Test 4: set linebreak nolist
|
||||||
|
abcdef
|
||||||
|
+hijklmn
|
||||||
|
! +pqrstuvwxyz 1060ABC
|
||||||
|
+DEFGHIJKLMNOP
|
||||||
|
-
|
||||||
|
- Test 5: set nolinebreak list
|
||||||
|
- ▕———abcdef hijklmn▕—
|
||||||
|
- +pqrstuvwxyz␣1060ABC
|
||||||
|
- +DEFGHIJKLMNOPˑ¶
|
||||||
|
- ¶
|
||||||
|
1 aaaaaaaaaaaaaaaaaa
|
||||||
|
|
||||||
|
! Test 6: set linebreak with tab and 1 line as long as screen: should break!
|
||||||
|
1
|
||||||
|
+aaaaaaaaaaaaaaaaaa
|
||||||
|
~
|
||||||
|
--- 1,26 ----
|
||||||
|
|
||||||
|
! abcdef hijklmn pqrstuvwxyz_1060ABCDEFGHIJKLMNOP
|
||||||
|
|
||||||
|
Test 1: set linebreak
|
||||||
|
abcdef
|
||||||
|
+hijklmn
|
||||||
|
! +pqrstuvwxyz_1060ABC
|
||||||
|
+DEFGHIJKLMNOP
|
||||||
|
|
||||||
|
Test 2: set linebreak + set list
|
||||||
|
^Iabcdef hijklmn^I
|
||||||
|
! +pqrstuvwxyz_1060ABC
|
||||||
|
+DEFGHIJKLMNOP
|
||||||
|
|
||||||
|
|
||||||
|
! Test 3: set linebreak nolist
|
||||||
|
abcdef
|
||||||
|
+hijklmn
|
||||||
|
! +pqrstuvwxyz_1060ABC
|
||||||
|
+DEFGHIJKLMNOP
|
||||||
|
1 aaaaaaaaaaaaaaaaaa
|
||||||
|
|
||||||
|
! Test 4: set linebreak with tab and 1 line as long as screen: should break!
|
||||||
|
1
|
||||||
|
+aaaaaaaaaaaaaaaaaa
|
||||||
|
~
|
||||||
|
*** ../vim-7.4.369/src/testdir/test_listlbr_utf8.in 2014-07-16 17:01:25.415570829 +0200
|
||||||
|
--- src/testdir/test_listlbr_utf8.in 2014-07-16 16:55:15.315578352 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,41 ----
|
||||||
|
+ Test for linebreak and list option in utf-8 mode
|
||||||
|
+
|
||||||
|
+ STARTTEST
|
||||||
|
+ :so small.vim
|
||||||
|
+ :if !exists("+linebreak") | e! test.ok | w! test.out | qa! | endif
|
||||||
|
+ :so mbyte.vim
|
||||||
|
+ :if &enc !=? 'utf-8'|:e! test.ok|:w! test.out|qa!|endif
|
||||||
|
+ :10new|:vsp|:vert resize 20
|
||||||
|
+ :put =\"\tabcdef hijklmn\tpqrstuvwxyz\u00a01060ABCDEFGHIJKLMNOP \"
|
||||||
|
+ :norm! zt
|
||||||
|
+ :set ts=4 sw=4 sts=4 linebreak sbr=+ wrap
|
||||||
|
+ :fu! ScreenChar(width)
|
||||||
|
+ : let c=''
|
||||||
|
+ : for j in range(1,4)
|
||||||
|
+ : for i in range(1,a:width)
|
||||||
|
+ : let c.=nr2char(screenchar(j, i))
|
||||||
|
+ : endfor
|
||||||
|
+ : let c.="\n"
|
||||||
|
+ : endfor
|
||||||
|
+ : return c
|
||||||
|
+ :endfu
|
||||||
|
+ :fu! DoRecordScreen()
|
||||||
|
+ : wincmd l
|
||||||
|
+ : $put =printf(\"\n%s\", g:test)
|
||||||
|
+ : $put =g:line
|
||||||
|
+ : wincmd p
|
||||||
|
+ :endfu
|
||||||
|
+ :let g:test ="Test 1: set linebreak + set list + fancy listchars"
|
||||||
|
+ :exe "set linebreak list listchars=nbsp:\u2423,tab:\u2595\u2014,trail:\u02d1,eol:\ub6"
|
||||||
|
+ :redraw!
|
||||||
|
+ :let line=ScreenChar(winwidth(0))
|
||||||
|
+ :call DoRecordScreen()
|
||||||
|
+ :let g:test ="Test 2: set nolinebreak list"
|
||||||
|
+ :set list nolinebreak
|
||||||
|
+ :redraw!
|
||||||
|
+ :let line=ScreenChar(winwidth(0))
|
||||||
|
+ :call DoRecordScreen()
|
||||||
|
+ :%w! test.out
|
||||||
|
+ :qa!
|
||||||
|
+ ENDTEST
|
||||||
|
+ dummy text
|
||||||
|
*** ../vim-7.4.369/src/testdir/test_listlbr_utf8.ok 2014-07-16 17:01:25.419570829 +0200
|
||||||
|
--- src/testdir/test_listlbr_utf8.ok 2014-07-16 16:55:15.315578352 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,14 ----
|
||||||
|
+
|
||||||
|
+ abcdef hijklmn pqrstuvwxyz 1060ABCDEFGHIJKLMNOP
|
||||||
|
+
|
||||||
|
+ Test 1: set linebreak + set list + fancy listchars
|
||||||
|
+ ▕———abcdef
|
||||||
|
+ +hijklmn▕———
|
||||||
|
+ +pqrstuvwxyz␣1060ABC
|
||||||
|
+ +DEFGHIJKLMNOPˑ¶
|
||||||
|
+
|
||||||
|
+ Test 2: set nolinebreak list
|
||||||
|
+ ▕———abcdef hijklmn▕—
|
||||||
|
+ +pqrstuvwxyz␣1060ABC
|
||||||
|
+ +DEFGHIJKLMNOPˑ¶
|
||||||
|
+ ¶
|
||||||
|
*** ../vim-7.4.369/src/version.c 2014-07-16 16:30:21.647608710 +0200
|
||||||
|
--- src/version.c 2014-07-16 16:56:38.755576656 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 370,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Another bucket of what can only be described as human ordure hits ARTHUR.
|
||||||
|
ARTHUR: ... Right! (to the KNIGHTS) That settles it!
|
||||||
|
"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 ///
|
59
7.4.371
Normal file
59
7.4.371
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.371
|
||||||
|
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.4.371
|
||||||
|
Problem: When 'linebreak' is set control characters are not correctly
|
||||||
|
displayed. (Kimmy Lindvall)
|
||||||
|
Solution: Set n_extra. (Christian Brabandt)
|
||||||
|
Files: src/screen.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.370/src/screen.c 2014-07-09 20:20:40.359620108 +0200
|
||||||
|
--- src/screen.c 2014-07-16 17:12:38.599557147 +0200
|
||||||
|
***************
|
||||||
|
*** 4646,4651 ****
|
||||||
|
--- 4646,4653 ----
|
||||||
|
else if (c != NUL)
|
||||||
|
{
|
||||||
|
p_extra = transchar(c);
|
||||||
|
+ if (n_extra == 0)
|
||||||
|
+ n_extra = byte2cells(c) - 1;
|
||||||
|
#ifdef FEAT_RIGHTLEFT
|
||||||
|
if ((dy_flags & DY_UHEX) && wp->w_p_rl)
|
||||||
|
rl_mirror(p_extra); /* reverse "<12>" */
|
||||||
|
*** ../vim-7.4.370/src/version.c 2014-07-16 17:01:38.279570568 +0200
|
||||||
|
--- src/version.c 2014-07-16 17:13:21.815556269 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 371,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
LETTERS TO THE EDITOR (The Times of London)
|
||||||
|
|
||||||
|
Dear Sir,
|
||||||
|
|
||||||
|
I am firmly opposed to the spread of microchips either to the home or
|
||||||
|
to the office. We have more than enough of them foisted upon us in
|
||||||
|
public places. They are a disgusting Americanism, and can only result
|
||||||
|
in the farmers being forced to grow smaller potatoes, which in turn
|
||||||
|
will cause massive unemployment in the already severely depressed
|
||||||
|
agricultural industry.
|
||||||
|
|
||||||
|
Yours faithfully,
|
||||||
|
Capt. Quinton D'Arcy, J. P.
|
||||||
|
Sevenoaks
|
||||||
|
|
||||||
|
/// 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 ///
|
188
7.4.372
Normal file
188
7.4.372
Normal file
@ -0,0 +1,188 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.372
|
||||||
|
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.4.372
|
||||||
|
Problem: When 'winminheight' is zero there might not be one line for the
|
||||||
|
current window.
|
||||||
|
Solution: Change the size computations. (Yukihiro Nakadaira)
|
||||||
|
Files: src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.371/src/window.c 2014-07-16 16:30:21.647608710 +0200
|
||||||
|
--- src/window.c 2014-07-16 18:06:53.123491001 +0200
|
||||||
|
***************
|
||||||
|
*** 688,693 ****
|
||||||
|
--- 688,695 ----
|
||||||
|
int before;
|
||||||
|
int minwidth;
|
||||||
|
int minheight;
|
||||||
|
+ int wmw1;
|
||||||
|
+ int wmh1;
|
||||||
|
|
||||||
|
if (flags & WSP_TOP)
|
||||||
|
oldwin = firstwin;
|
||||||
|
***************
|
||||||
|
*** 722,740 ****
|
||||||
|
* Check if we are able to split the current window and compute its
|
||||||
|
* width.
|
||||||
|
*/
|
||||||
|
! needed = p_wmw + 1;
|
||||||
|
if (flags & WSP_ROOM)
|
||||||
|
! needed += p_wiw - p_wmw;
|
||||||
|
if (p_ea || (flags & (WSP_BOT | WSP_TOP)))
|
||||||
|
{
|
||||||
|
! minwidth = frame_minwidth(topframe, NULL);
|
||||||
|
available = topframe->fr_width;
|
||||||
|
needed += minwidth;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! minwidth = frame_minwidth(oldwin->w_frame, NULL);
|
||||||
|
! available = oldwin->w_width;
|
||||||
|
}
|
||||||
|
if (available < needed && new_wp == NULL)
|
||||||
|
{
|
||||||
|
--- 724,745 ----
|
||||||
|
* Check if we are able to split the current window and compute its
|
||||||
|
* width.
|
||||||
|
*/
|
||||||
|
! /* Current window requires at least 1 space. */
|
||||||
|
! wmw1 = (p_wmw == 0 ? 1 : p_wmw);
|
||||||
|
! needed = wmw1 + 1;
|
||||||
|
if (flags & WSP_ROOM)
|
||||||
|
! needed += p_wiw - wmw1;
|
||||||
|
if (p_ea || (flags & (WSP_BOT | WSP_TOP)))
|
||||||
|
{
|
||||||
|
! minwidth = frame_minwidth(topframe, NOWIN);
|
||||||
|
available = topframe->fr_width;
|
||||||
|
needed += minwidth;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! minwidth = frame_minwidth(oldwin->w_frame, NOWIN);
|
||||||
|
! available = oldwin->w_frame->fr_width;
|
||||||
|
! needed += minwidth;
|
||||||
|
}
|
||||||
|
if (available < needed && new_wp == NULL)
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 743,754 ****
|
||||||
|
}
|
||||||
|
if (new_size == 0)
|
||||||
|
new_size = oldwin->w_width / 2;
|
||||||
|
- if (new_size > oldwin->w_width - p_wmw - 1)
|
||||||
|
- new_size = oldwin->w_width - p_wmw - 1;
|
||||||
|
if (new_size > available - minwidth - 1)
|
||||||
|
new_size = available - minwidth - 1;
|
||||||
|
! if (new_size < p_wmw)
|
||||||
|
! new_size = p_wmw;
|
||||||
|
|
||||||
|
/* if it doesn't fit in the current window, need win_equal() */
|
||||||
|
if (oldwin->w_width - new_size - 1 < p_wmw)
|
||||||
|
--- 748,757 ----
|
||||||
|
}
|
||||||
|
if (new_size == 0)
|
||||||
|
new_size = oldwin->w_width / 2;
|
||||||
|
if (new_size > available - minwidth - 1)
|
||||||
|
new_size = available - minwidth - 1;
|
||||||
|
! if (new_size < wmw1)
|
||||||
|
! new_size = wmw1;
|
||||||
|
|
||||||
|
/* if it doesn't fit in the current window, need win_equal() */
|
||||||
|
if (oldwin->w_width - new_size - 1 < p_wmw)
|
||||||
|
***************
|
||||||
|
*** 789,808 ****
|
||||||
|
* Check if we are able to split the current window and compute its
|
||||||
|
* height.
|
||||||
|
*/
|
||||||
|
! needed = p_wmh + STATUS_HEIGHT + need_status;
|
||||||
|
if (flags & WSP_ROOM)
|
||||||
|
! needed += p_wh - p_wmh;
|
||||||
|
if (p_ea || (flags & (WSP_BOT | WSP_TOP)))
|
||||||
|
{
|
||||||
|
! minheight = frame_minheight(topframe, NULL);
|
||||||
|
available = topframe->fr_height;
|
||||||
|
needed += minheight;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! minheight = frame_minheight(oldwin->w_frame, NULL);
|
||||||
|
! available = oldwin->w_height;
|
||||||
|
! needed += p_wmh;
|
||||||
|
}
|
||||||
|
if (available < needed && new_wp == NULL)
|
||||||
|
{
|
||||||
|
--- 792,813 ----
|
||||||
|
* Check if we are able to split the current window and compute its
|
||||||
|
* height.
|
||||||
|
*/
|
||||||
|
! /* Current window requires at least 1 space. */
|
||||||
|
! wmh1 = (p_wmh == 0 ? 1 : p_wmh);
|
||||||
|
! needed = wmh1 + STATUS_HEIGHT;
|
||||||
|
if (flags & WSP_ROOM)
|
||||||
|
! needed += p_wh - wmh1;
|
||||||
|
if (p_ea || (flags & (WSP_BOT | WSP_TOP)))
|
||||||
|
{
|
||||||
|
! minheight = frame_minheight(topframe, NOWIN) + need_status;
|
||||||
|
available = topframe->fr_height;
|
||||||
|
needed += minheight;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
! minheight = frame_minheight(oldwin->w_frame, NOWIN) + need_status;
|
||||||
|
! available = oldwin->w_frame->fr_height;
|
||||||
|
! needed += minheight;
|
||||||
|
}
|
||||||
|
if (available < needed && new_wp == NULL)
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 817,829 ****
|
||||||
|
}
|
||||||
|
if (new_size == 0)
|
||||||
|
new_size = oldwin_height / 2;
|
||||||
|
-
|
||||||
|
- if (new_size > oldwin_height - p_wmh - STATUS_HEIGHT)
|
||||||
|
- new_size = oldwin_height - p_wmh - STATUS_HEIGHT;
|
||||||
|
if (new_size > available - minheight - STATUS_HEIGHT)
|
||||||
|
new_size = available - minheight - STATUS_HEIGHT;
|
||||||
|
! if (new_size < p_wmh)
|
||||||
|
! new_size = p_wmh;
|
||||||
|
|
||||||
|
/* if it doesn't fit in the current window, need win_equal() */
|
||||||
|
if (oldwin_height - new_size - STATUS_HEIGHT < p_wmh)
|
||||||
|
--- 822,831 ----
|
||||||
|
}
|
||||||
|
if (new_size == 0)
|
||||||
|
new_size = oldwin_height / 2;
|
||||||
|
if (new_size > available - minheight - STATUS_HEIGHT)
|
||||||
|
new_size = available - minheight - STATUS_HEIGHT;
|
||||||
|
! if (new_size < wmh1)
|
||||||
|
! new_size = wmh1;
|
||||||
|
|
||||||
|
/* if it doesn't fit in the current window, need win_equal() */
|
||||||
|
if (oldwin_height - new_size - STATUS_HEIGHT < p_wmh)
|
||||||
|
*** ../vim-7.4.371/src/version.c 2014-07-16 17:29:46.691536252 +0200
|
||||||
|
--- src/version.c 2014-07-16 17:34:14.795530803 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 372,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
[The rest of the ARMY stand around looking at a loss.]
|
||||||
|
INSPECTOR END OF FILM: (picks up megaphone) All right! Clear off! Go on!
|
||||||
|
"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 ///
|
98
7.4.373
Normal file
98
7.4.373
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.373
|
||||||
|
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.4.373
|
||||||
|
Problem: Compiler warning for unused argument and unused variable.
|
||||||
|
Solution: Add UNUSED. Move variable inside #ifdef.
|
||||||
|
Files: src/charset.c, src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.372/src/charset.c 2014-07-02 19:59:35.450375136 +0200
|
||||||
|
--- src/charset.c 2014-07-16 23:36:51.211088615 +0200
|
||||||
|
***************
|
||||||
|
*** 1024,1030 ****
|
||||||
|
*/
|
||||||
|
int
|
||||||
|
lbr_chartabsize(line, s, col)
|
||||||
|
! char_u *line; /* start of the line */
|
||||||
|
unsigned char *s;
|
||||||
|
colnr_T col;
|
||||||
|
{
|
||||||
|
--- 1024,1030 ----
|
||||||
|
*/
|
||||||
|
int
|
||||||
|
lbr_chartabsize(line, s, col)
|
||||||
|
! char_u *line UNUSED; /* start of the line */
|
||||||
|
unsigned char *s;
|
||||||
|
colnr_T col;
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 1069,1075 ****
|
||||||
|
int
|
||||||
|
win_lbr_chartabsize(wp, line, s, col, headp)
|
||||||
|
win_T *wp;
|
||||||
|
! char_u *line; /* start of the line */
|
||||||
|
char_u *s;
|
||||||
|
colnr_T col;
|
||||||
|
int *headp UNUSED;
|
||||||
|
--- 1069,1075 ----
|
||||||
|
int
|
||||||
|
win_lbr_chartabsize(wp, line, s, col, headp)
|
||||||
|
win_T *wp;
|
||||||
|
! char_u *line UNUSED; /* start of the line */
|
||||||
|
char_u *s;
|
||||||
|
colnr_T col;
|
||||||
|
int *headp UNUSED;
|
||||||
|
*** ../vim-7.4.372/src/window.c 2014-07-16 18:19:22.911475762 +0200
|
||||||
|
--- src/window.c 2014-07-16 23:38:31.567086575 +0200
|
||||||
|
***************
|
||||||
|
*** 686,694 ****
|
||||||
|
int layout;
|
||||||
|
frame_T *frp, *curfrp;
|
||||||
|
int before;
|
||||||
|
- int minwidth;
|
||||||
|
int minheight;
|
||||||
|
- int wmw1;
|
||||||
|
int wmh1;
|
||||||
|
|
||||||
|
if (flags & WSP_TOP)
|
||||||
|
--- 686,692 ----
|
||||||
|
***************
|
||||||
|
*** 718,723 ****
|
||||||
|
--- 716,724 ----
|
||||||
|
#ifdef FEAT_VERTSPLIT
|
||||||
|
if (flags & WSP_VERT)
|
||||||
|
{
|
||||||
|
+ int wmw1;
|
||||||
|
+ int minwidth;
|
||||||
|
+
|
||||||
|
layout = FR_ROW;
|
||||||
|
|
||||||
|
/*
|
||||||
|
*** ../vim-7.4.372/src/version.c 2014-07-16 18:19:22.915475762 +0200
|
||||||
|
--- src/version.c 2014-07-16 23:36:20.775089233 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 373,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
INSPECTOR END OF FILM: Move along. There's nothing to see! Keep moving!
|
||||||
|
[Suddenly he notices the cameras.]
|
||||||
|
INSPECTOR END OF FILM: (to Camera) All right, put that away sonny.
|
||||||
|
[He walks over to it and puts his hand over the lens.]
|
||||||
|
"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 ///
|
71
7.4.374
Normal file
71
7.4.374
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.374
|
||||||
|
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.4.374
|
||||||
|
Problem: Character after "fb" command not mapped if it might be a composing
|
||||||
|
character.
|
||||||
|
Solution: Don't disable mapping when looking for a composing character.
|
||||||
|
(Jacob Niehus)
|
||||||
|
Files: src/normal.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.373/src/normal.c 2014-04-29 12:15:22.856032651 +0200
|
||||||
|
--- src/normal.c 2014-07-23 12:26:26.811992854 +0200
|
||||||
|
***************
|
||||||
|
*** 1076,1082 ****
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
/* When getting a text character and the next character is a
|
||||||
|
* multi-byte character, it could be a composing character.
|
||||||
|
! * However, don't wait for it to arrive. */
|
||||||
|
while (enc_utf8 && lang && (c = vpeekc()) > 0
|
||||||
|
&& (c >= 0x100 || MB_BYTE2LEN(vpeekc()) > 1))
|
||||||
|
{
|
||||||
|
--- 1076,1085 ----
|
||||||
|
#ifdef FEAT_MBYTE
|
||||||
|
/* When getting a text character and the next character is a
|
||||||
|
* multi-byte character, it could be a composing character.
|
||||||
|
! * However, don't wait for it to arrive. Also, do enable mapping,
|
||||||
|
! * because if it's put back with vungetc() it's too late to apply
|
||||||
|
! * mapping. */
|
||||||
|
! --no_mapping;
|
||||||
|
while (enc_utf8 && lang && (c = vpeekc()) > 0
|
||||||
|
&& (c >= 0x100 || MB_BYTE2LEN(vpeekc()) > 1))
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 1091,1096 ****
|
||||||
|
--- 1094,1100 ----
|
||||||
|
else
|
||||||
|
ca.ncharC2 = c;
|
||||||
|
}
|
||||||
|
+ ++no_mapping;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
--no_mapping;
|
||||||
|
*** ../vim-7.4.373/src/version.c 2014-07-16 23:39:50.251084976 +0200
|
||||||
|
--- src/version.c 2014-07-23 12:27:50.483992253 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 374,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
CART DRIVER: Bring out your dead!
|
||||||
|
There are legs stick out of windows and doors. Two MEN are fighting in the
|
||||||
|
mud - covered from head to foot in it. Another MAN is on his hands in
|
||||||
|
knees shovelling mud into his mouth. We just catch sight of a MAN falling
|
||||||
|
into a well.
|
||||||
|
"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 ///
|
59
7.4.375
Normal file
59
7.4.375
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.375
|
||||||
|
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.4.375
|
||||||
|
Problem: Test 63 fails when run with GUI-only Vim.
|
||||||
|
Solution: Add guibg attributes. (suggested by Mike Soyka)
|
||||||
|
Files: src/testdir/test63.in
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.374/src/testdir/test63.in 2014-06-17 17:48:21.784628008 +0200
|
||||||
|
--- src/testdir/test63.in 2014-07-23 13:12:20.727973060 +0200
|
||||||
|
***************
|
||||||
|
*** 6,14 ****
|
||||||
|
:" --- Check that "matcharg()" returns the correct group and pattern if a match
|
||||||
|
:" --- is defined.
|
||||||
|
:let @r = "*** Test 1: "
|
||||||
|
! :highlight MyGroup1 ctermbg=red
|
||||||
|
! :highlight MyGroup2 ctermbg=green
|
||||||
|
! :highlight MyGroup3 ctermbg=blue
|
||||||
|
:match MyGroup1 /TODO/
|
||||||
|
:2match MyGroup2 /FIXME/
|
||||||
|
:3match MyGroup3 /XXX/
|
||||||
|
--- 6,14 ----
|
||||||
|
:" --- Check that "matcharg()" returns the correct group and pattern if a match
|
||||||
|
:" --- is defined.
|
||||||
|
:let @r = "*** Test 1: "
|
||||||
|
! :highlight MyGroup1 ctermbg=red guibg=red
|
||||||
|
! :highlight MyGroup2 ctermbg=green guibg=green
|
||||||
|
! :highlight MyGroup3 ctermbg=blue guibg=blue
|
||||||
|
:match MyGroup1 /TODO/
|
||||||
|
:2match MyGroup2 /FIXME/
|
||||||
|
:3match MyGroup3 /XXX/
|
||||||
|
*** ../vim-7.4.374/src/version.c 2014-07-23 12:31:17.207990767 +0200
|
||||||
|
--- src/version.c 2014-07-23 13:13:15.167972669 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 375,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
BODY: I'm not dead!
|
||||||
|
CART DRIVER: 'Ere. He says he's not dead.
|
||||||
|
LARGE MAN: Yes he is.
|
||||||
|
BODY: I'm not!
|
||||||
|
"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 ///
|
57
7.4.376
Normal file
57
7.4.376
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.376
|
||||||
|
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.4.376 (after 7.4.367)
|
||||||
|
Problem: Popup menu flickers too much.
|
||||||
|
Solution: Remove the forced redraw. (Hirohito Higashi)
|
||||||
|
Files: src/edit.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.375/src/edit.c 2014-07-16 14:42:37.923740082 +0200
|
||||||
|
--- src/edit.c 2014-07-23 13:49:03.535957228 +0200
|
||||||
|
***************
|
||||||
|
*** 4593,4601 ****
|
||||||
|
i = compl_col + (compl_cont_status & CONT_ADDING ? compl_length : 0);
|
||||||
|
backspace_until_column(i);
|
||||||
|
|
||||||
|
! /* Not sure what is still valid, better redraw everything. */
|
||||||
|
changed_cline_bef_curs();
|
||||||
|
- redraw_curbuf_later(NOT_VALID);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Insert the new text being completed. */
|
||||||
|
--- 4593,4601 ----
|
||||||
|
i = compl_col + (compl_cont_status & CONT_ADDING ? compl_length : 0);
|
||||||
|
backspace_until_column(i);
|
||||||
|
|
||||||
|
! /* TODO: is this sufficient for redrawing? Redrawing everything causes
|
||||||
|
! * flicker, thus we can't do that. */
|
||||||
|
changed_cline_bef_curs();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Insert the new text being completed. */
|
||||||
|
*** ../vim-7.4.375/src/version.c 2014-07-23 13:16:26.727971292 +0200
|
||||||
|
--- src/version.c 2014-07-23 13:48:02.031957670 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 376,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Why I like vim:
|
||||||
|
> I like VIM because, when I ask a question in this newsgroup, I get a
|
||||||
|
> one-line answer. With xemacs, I get a 1Kb lisp script with bugs in it ;-)
|
||||||
|
|
||||||
|
/// 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 ///
|
144
7.4.377
Normal file
144
7.4.377
Normal file
@ -0,0 +1,144 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.377
|
||||||
|
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.4.377
|
||||||
|
Problem: When 'equalalways' is set a split may report "no room" even though
|
||||||
|
there is plenty of room.
|
||||||
|
Solution: Compute the available room properly. (Yukihiro Nakadaira)
|
||||||
|
Files: src/window.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.376/src/window.c 2014-07-16 23:39:50.251084976 +0200
|
||||||
|
--- src/window.c 2014-07-23 15:19:10.491918366 +0200
|
||||||
|
***************
|
||||||
|
*** 684,690 ****
|
||||||
|
int available;
|
||||||
|
int oldwin_height = 0;
|
||||||
|
int layout;
|
||||||
|
! frame_T *frp, *curfrp;
|
||||||
|
int before;
|
||||||
|
int minheight;
|
||||||
|
int wmh1;
|
||||||
|
--- 684,690 ----
|
||||||
|
int available;
|
||||||
|
int oldwin_height = 0;
|
||||||
|
int layout;
|
||||||
|
! frame_T *frp, *curfrp, *frp2, *prevfrp;
|
||||||
|
int before;
|
||||||
|
int minheight;
|
||||||
|
int wmh1;
|
||||||
|
***************
|
||||||
|
*** 730,741 ****
|
||||||
|
needed = wmw1 + 1;
|
||||||
|
if (flags & WSP_ROOM)
|
||||||
|
needed += p_wiw - wmw1;
|
||||||
|
! if (p_ea || (flags & (WSP_BOT | WSP_TOP)))
|
||||||
|
{
|
||||||
|
minwidth = frame_minwidth(topframe, NOWIN);
|
||||||
|
available = topframe->fr_width;
|
||||||
|
needed += minwidth;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
minwidth = frame_minwidth(oldwin->w_frame, NOWIN);
|
||||||
|
--- 730,758 ----
|
||||||
|
needed = wmw1 + 1;
|
||||||
|
if (flags & WSP_ROOM)
|
||||||
|
needed += p_wiw - wmw1;
|
||||||
|
! if (flags & (WSP_BOT | WSP_TOP))
|
||||||
|
{
|
||||||
|
minwidth = frame_minwidth(topframe, NOWIN);
|
||||||
|
available = topframe->fr_width;
|
||||||
|
needed += minwidth;
|
||||||
|
}
|
||||||
|
+ else if (p_ea)
|
||||||
|
+ {
|
||||||
|
+ minwidth = frame_minwidth(oldwin->w_frame, NOWIN);
|
||||||
|
+ prevfrp = oldwin->w_frame;
|
||||||
|
+ for (frp = oldwin->w_frame->fr_parent; frp != NULL;
|
||||||
|
+ frp = frp->fr_parent)
|
||||||
|
+ {
|
||||||
|
+ if (frp->fr_layout == FR_ROW)
|
||||||
|
+ for (frp2 = frp->fr_child; frp2 != NULL;
|
||||||
|
+ frp2 = frp2->fr_next)
|
||||||
|
+ if (frp2 != prevfrp)
|
||||||
|
+ minwidth += frame_minwidth(frp2, NOWIN);
|
||||||
|
+ prevfrp = frp;
|
||||||
|
+ }
|
||||||
|
+ available = topframe->fr_width;
|
||||||
|
+ needed += minwidth;
|
||||||
|
+ }
|
||||||
|
else
|
||||||
|
{
|
||||||
|
minwidth = frame_minwidth(oldwin->w_frame, NOWIN);
|
||||||
|
***************
|
||||||
|
*** 798,809 ****
|
||||||
|
needed = wmh1 + STATUS_HEIGHT;
|
||||||
|
if (flags & WSP_ROOM)
|
||||||
|
needed += p_wh - wmh1;
|
||||||
|
! if (p_ea || (flags & (WSP_BOT | WSP_TOP)))
|
||||||
|
{
|
||||||
|
minheight = frame_minheight(topframe, NOWIN) + need_status;
|
||||||
|
available = topframe->fr_height;
|
||||||
|
needed += minheight;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
minheight = frame_minheight(oldwin->w_frame, NOWIN) + need_status;
|
||||||
|
--- 815,843 ----
|
||||||
|
needed = wmh1 + STATUS_HEIGHT;
|
||||||
|
if (flags & WSP_ROOM)
|
||||||
|
needed += p_wh - wmh1;
|
||||||
|
! if (flags & (WSP_BOT | WSP_TOP))
|
||||||
|
{
|
||||||
|
minheight = frame_minheight(topframe, NOWIN) + need_status;
|
||||||
|
available = topframe->fr_height;
|
||||||
|
needed += minheight;
|
||||||
|
}
|
||||||
|
+ else if (p_ea)
|
||||||
|
+ {
|
||||||
|
+ minheight = frame_minheight(oldwin->w_frame, NOWIN) + need_status;
|
||||||
|
+ prevfrp = oldwin->w_frame;
|
||||||
|
+ for (frp = oldwin->w_frame->fr_parent; frp != NULL;
|
||||||
|
+ frp = frp->fr_parent)
|
||||||
|
+ {
|
||||||
|
+ if (frp->fr_layout == FR_COL)
|
||||||
|
+ for (frp2 = frp->fr_child; frp2 != NULL;
|
||||||
|
+ frp2 = frp2->fr_next)
|
||||||
|
+ if (frp2 != prevfrp)
|
||||||
|
+ minheight += frame_minheight(frp2, NOWIN);
|
||||||
|
+ prevfrp = frp;
|
||||||
|
+ }
|
||||||
|
+ available = topframe->fr_height;
|
||||||
|
+ needed += minheight;
|
||||||
|
+ }
|
||||||
|
else
|
||||||
|
{
|
||||||
|
minheight = frame_minheight(oldwin->w_frame, NOWIN) + need_status;
|
||||||
|
*** ../vim-7.4.376/src/version.c 2014-07-23 13:50:41.839956521 +0200
|
||||||
|
--- src/version.c 2014-07-23 15:20:33.227917771 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 377,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
LARGE MAN: Who's that then?
|
||||||
|
CART DRIVER: (Grudgingly) I dunno, Must be a king.
|
||||||
|
LARGE MAN: Why?
|
||||||
|
CART DRIVER: He hasn't got shit all over him.
|
||||||
|
"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 ///
|
336
7.4.378
Normal file
336
7.4.378
Normal file
@ -0,0 +1,336 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.378
|
||||||
|
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.4.378
|
||||||
|
Problem: Title of quickfist list is not kept for setqflist(list, 'r').
|
||||||
|
Solution: Keep the title. Add a test. (Lcd)
|
||||||
|
Files: src/quickfix.c, src/testdir/Make_amiga.mak,
|
||||||
|
src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
|
||||||
|
src/testdir/Make_os2.mak, src/testdir/Make_vms.mms,
|
||||||
|
src/testdir/Makefile, src/testdir/test_qf_title.in,
|
||||||
|
src/testdir/test_qf_title.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.377/src/quickfix.c 2014-03-27 17:02:22.080660944 +0100
|
||||||
|
--- src/quickfix.c 2014-07-23 15:37:30.551910459 +0200
|
||||||
|
***************
|
||||||
|
*** 107,112 ****
|
||||||
|
--- 107,113 ----
|
||||||
|
};
|
||||||
|
|
||||||
|
static int qf_init_ext __ARGS((qf_info_T *qi, char_u *efile, buf_T *buf, typval_T *tv, char_u *errorformat, int newlist, linenr_T lnumfirst, linenr_T lnumlast, char_u *qf_title));
|
||||||
|
+ static void qf_store_title __ARGS((qf_info_T *qi, char_u *title));
|
||||||
|
static void qf_new_list __ARGS((qf_info_T *qi, char_u *qf_title));
|
||||||
|
static void ll_free_all __ARGS((qf_info_T **pqi));
|
||||||
|
static int qf_add_entry __ARGS((qf_info_T *qi, qfline_T **prevp, char_u *dir, char_u *fname, int bufnum, char_u *mesg, long lnum, int col, int vis_col, char_u *pattern, int nr, int type, int valid));
|
||||||
|
***************
|
||||||
|
*** 126,132 ****
|
||||||
|
static win_T *qf_find_win __ARGS((qf_info_T *qi));
|
||||||
|
static buf_T *qf_find_buf __ARGS((qf_info_T *qi));
|
||||||
|
static void qf_update_buffer __ARGS((qf_info_T *qi));
|
||||||
|
! static void qf_set_title __ARGS((qf_info_T *qi));
|
||||||
|
static void qf_fill_buffer __ARGS((qf_info_T *qi));
|
||||||
|
#endif
|
||||||
|
static char_u *get_mef_name __ARGS((void));
|
||||||
|
--- 127,133 ----
|
||||||
|
static win_T *qf_find_win __ARGS((qf_info_T *qi));
|
||||||
|
static buf_T *qf_find_buf __ARGS((qf_info_T *qi));
|
||||||
|
static void qf_update_buffer __ARGS((qf_info_T *qi));
|
||||||
|
! static void qf_set_title_var __ARGS((qf_info_T *qi));
|
||||||
|
static void qf_fill_buffer __ARGS((qf_info_T *qi));
|
||||||
|
#endif
|
||||||
|
static char_u *get_mef_name __ARGS((void));
|
||||||
|
***************
|
||||||
|
*** 884,889 ****
|
||||||
|
--- 885,905 ----
|
||||||
|
return retval;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ static void
|
||||||
|
+ qf_store_title(qi, title)
|
||||||
|
+ qf_info_T *qi;
|
||||||
|
+ char_u *title;
|
||||||
|
+ {
|
||||||
|
+ if (title != NULL)
|
||||||
|
+ {
|
||||||
|
+ char_u *p = alloc((int)STRLEN(title) + 2);
|
||||||
|
+
|
||||||
|
+ qi->qf_lists[qi->qf_curlist].qf_title = p;
|
||||||
|
+ if (p != NULL)
|
||||||
|
+ sprintf((char *)p, ":%s", (char *)title);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* Prepare for adding a new quickfix list.
|
||||||
|
*/
|
||||||
|
***************
|
||||||
|
*** 895,901 ****
|
||||||
|
int i;
|
||||||
|
|
||||||
|
/*
|
||||||
|
! * If the current entry is not the last entry, delete entries below
|
||||||
|
* the current entry. This makes it possible to browse in a tree-like
|
||||||
|
* way with ":grep'.
|
||||||
|
*/
|
||||||
|
--- 911,917 ----
|
||||||
|
int i;
|
||||||
|
|
||||||
|
/*
|
||||||
|
! * If the current entry is not the last entry, delete entries beyond
|
||||||
|
* the current entry. This makes it possible to browse in a tree-like
|
||||||
|
* way with ":grep'.
|
||||||
|
*/
|
||||||
|
***************
|
||||||
|
*** 916,929 ****
|
||||||
|
else
|
||||||
|
qi->qf_curlist = qi->qf_listcount++;
|
||||||
|
vim_memset(&qi->qf_lists[qi->qf_curlist], 0, (size_t)(sizeof(qf_list_T)));
|
||||||
|
! if (qf_title != NULL)
|
||||||
|
! {
|
||||||
|
! char_u *p = alloc((int)STRLEN(qf_title) + 2);
|
||||||
|
!
|
||||||
|
! qi->qf_lists[qi->qf_curlist].qf_title = p;
|
||||||
|
! if (p != NULL)
|
||||||
|
! sprintf((char *)p, ":%s", (char *)qf_title);
|
||||||
|
! }
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
--- 932,938 ----
|
||||||
|
else
|
||||||
|
qi->qf_curlist = qi->qf_listcount++;
|
||||||
|
vim_memset(&qi->qf_lists[qi->qf_curlist], 0, (size_t)(sizeof(qf_list_T)));
|
||||||
|
! qf_store_title(qi, qf_title);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
***************
|
||||||
|
*** 2444,2450 ****
|
||||||
|
qf_fill_buffer(qi);
|
||||||
|
|
||||||
|
if (qi->qf_lists[qi->qf_curlist].qf_title != NULL)
|
||||||
|
! qf_set_title(qi);
|
||||||
|
|
||||||
|
curwin->w_cursor.lnum = qi->qf_lists[qi->qf_curlist].qf_index;
|
||||||
|
curwin->w_cursor.col = 0;
|
||||||
|
--- 2453,2459 ----
|
||||||
|
qf_fill_buffer(qi);
|
||||||
|
|
||||||
|
if (qi->qf_lists[qi->qf_curlist].qf_title != NULL)
|
||||||
|
! qf_set_title_var(qi);
|
||||||
|
|
||||||
|
curwin->w_cursor.lnum = qi->qf_lists[qi->qf_curlist].qf_index;
|
||||||
|
curwin->w_cursor.col = 0;
|
||||||
|
***************
|
||||||
|
*** 2599,2605 ****
|
||||||
|
{
|
||||||
|
curwin_save = curwin;
|
||||||
|
curwin = win;
|
||||||
|
! qf_set_title(qi);
|
||||||
|
curwin = curwin_save;
|
||||||
|
|
||||||
|
}
|
||||||
|
--- 2608,2614 ----
|
||||||
|
{
|
||||||
|
curwin_save = curwin;
|
||||||
|
curwin = win;
|
||||||
|
! qf_set_title_var(qi);
|
||||||
|
curwin = curwin_save;
|
||||||
|
|
||||||
|
}
|
||||||
|
***************
|
||||||
|
*** 2612,2618 ****
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
! qf_set_title(qi)
|
||||||
|
qf_info_T *qi;
|
||||||
|
{
|
||||||
|
set_internal_string_var((char_u *)"w:quickfix_title",
|
||||||
|
--- 2621,2627 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
! qf_set_title_var(qi)
|
||||||
|
qf_info_T *qi;
|
||||||
|
{
|
||||||
|
set_internal_string_var((char_u *)"w:quickfix_title",
|
||||||
|
***************
|
||||||
|
*** 3845,3851 ****
|
||||||
|
--- 3854,3863 ----
|
||||||
|
prevp->qf_next != prevp; prevp = prevp->qf_next)
|
||||||
|
;
|
||||||
|
else if (action == 'r')
|
||||||
|
+ {
|
||||||
|
qf_free(qi, qi->qf_curlist);
|
||||||
|
+ qf_store_title(qi, title);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
for (li = list->lv_first; li != NULL; li = li->li_next)
|
||||||
|
{
|
||||||
|
*** ../vim-7.4.377/src/testdir/Make_amiga.mak 2014-07-16 17:01:38.275570568 +0200
|
||||||
|
--- src/testdir/Make_amiga.mak 2014-07-23 15:26:51.455915053 +0200
|
||||||
|
***************
|
||||||
|
*** 40,45 ****
|
||||||
|
--- 40,46 ----
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
test_listlbr_utf8.out \
|
||||||
|
+ test_qf_title.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 169,173 ****
|
||||||
|
--- 170,175 ----
|
||||||
|
test_breakindent.out: test_breakindent.in
|
||||||
|
test_listlbr.out: test_listlbr.in
|
||||||
|
test_listlbr_utf8.out: test_listlbr_utf8.in
|
||||||
|
+ test_qf_title.out: test_qf_title.in
|
||||||
|
test_eval.out: test_eval.in
|
||||||
|
test_options.out: test_options.in
|
||||||
|
*** ../vim-7.4.377/src/testdir/Make_dos.mak 2014-07-16 17:01:38.279570568 +0200
|
||||||
|
--- src/testdir/Make_dos.mak 2014-07-23 15:27:01.231914983 +0200
|
||||||
|
***************
|
||||||
|
*** 39,44 ****
|
||||||
|
--- 39,45 ----
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
test_listlbr_utf8.out \
|
||||||
|
+ test_qf_title.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.377/src/testdir/Make_ming.mak 2014-07-16 17:01:38.279570568 +0200
|
||||||
|
--- src/testdir/Make_ming.mak 2014-07-23 15:27:13.163914897 +0200
|
||||||
|
***************
|
||||||
|
*** 59,64 ****
|
||||||
|
--- 59,65 ----
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
test_listlbr_utf8.out \
|
||||||
|
+ test_qf_title.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.377/src/testdir/Make_os2.mak 2014-07-16 17:01:38.279570568 +0200
|
||||||
|
--- src/testdir/Make_os2.mak 2014-07-23 15:27:25.999914805 +0200
|
||||||
|
***************
|
||||||
|
*** 40,47 ****
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
- test_listlbr_utf8.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
.SUFFIXES: .in .out
|
||||||
|
--- 40,48 ----
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
+ test_listlbr_utf8.out \
|
||||||
|
+ test_qf_title.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
.SUFFIXES: .in .out
|
||||||
|
*** ../vim-7.4.377/src/testdir/Make_vms.mms 2014-07-16 17:01:38.279570568 +0200
|
||||||
|
--- src/testdir/Make_vms.mms 2014-07-23 15:27:34.787914741 +0200
|
||||||
|
***************
|
||||||
|
*** 4,10 ****
|
||||||
|
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||||
|
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||||
|
#
|
||||||
|
! # Last change: 2014 May 28
|
||||||
|
#
|
||||||
|
# This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
|
||||||
|
# Edit the lines in the Configuration section below to select.
|
||||||
|
--- 4,10 ----
|
||||||
|
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||||
|
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||||
|
#
|
||||||
|
! # Last change: 2014 Jul 23
|
||||||
|
#
|
||||||
|
# This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
|
||||||
|
# Edit the lines in the Configuration section below to select.
|
||||||
|
***************
|
||||||
|
*** 100,105 ****
|
||||||
|
--- 100,106 ----
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
test_listlbr_utf8.out \
|
||||||
|
+ test_qf_title.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.377/src/testdir/Makefile 2014-07-16 17:01:38.279570568 +0200
|
||||||
|
--- src/testdir/Makefile 2014-07-23 15:27:46.947914654 +0200
|
||||||
|
***************
|
||||||
|
*** 37,42 ****
|
||||||
|
--- 37,43 ----
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
test_listlbr_utf8.out \
|
||||||
|
+ test_qf_title.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.377/src/testdir/test_qf_title.in 2014-07-23 15:53:26.279903590 +0200
|
||||||
|
--- src/testdir/test_qf_title.in 2014-07-23 15:26:02.495915405 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,18 ----
|
||||||
|
+ Tests for quickfix window's title vim: set ft=vim :
|
||||||
|
+
|
||||||
|
+ STARTTEST
|
||||||
|
+ :so small.vim
|
||||||
|
+ :if !has('quickfix') | e! test.ok | wq! test.out | endif
|
||||||
|
+ :set efm=%E%f:%l:%c:%m
|
||||||
|
+ :cgetexpr ['file:1:1:message']
|
||||||
|
+ :let qflist=getqflist()
|
||||||
|
+ :call setqflist(qflist, 'r')
|
||||||
|
+ :copen
|
||||||
|
+ :let g:quickfix_title=w:quickfix_title
|
||||||
|
+ :wincmd p
|
||||||
|
+ :$put =g:quickfix_title
|
||||||
|
+ :/^Results/,$w test.out
|
||||||
|
+ :qa!
|
||||||
|
+ ENDTEST
|
||||||
|
+
|
||||||
|
+ Results of test_qf_title:
|
||||||
|
*** ../vim-7.4.377/src/testdir/test_qf_title.ok 2014-07-23 15:53:26.283903590 +0200
|
||||||
|
--- src/testdir/test_qf_title.ok 2014-07-23 15:25:55.303915456 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,2 ----
|
||||||
|
+ Results of test_qf_title:
|
||||||
|
+ :setqflist()
|
||||||
|
*** ../vim-7.4.377/src/version.c 2014-07-23 15:21:16.247917462 +0200
|
||||||
|
--- src/version.c 2014-07-23 15:28:57.251914149 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 378,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
ARTHUR: Old woman!
|
||||||
|
DENNIS: Man!
|
||||||
|
ARTHUR: Man. I'm sorry. Old man, What knight live in that castle over there?
|
||||||
|
DENNIS: I'm thirty-seven.
|
||||||
|
"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 ///
|
45
7.4.379
Normal file
45
7.4.379
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.379
|
||||||
|
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.4.379
|
||||||
|
Problem: Accessing freed memory after using setqflist(list, 'r'). (Lcd)
|
||||||
|
Solution: Reset qf_index.
|
||||||
|
Files: src/quickfix.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.378/src/quickfix.c 2014-07-23 15:54:43.443903036 +0200
|
||||||
|
--- src/quickfix.c 2014-07-23 16:11:59.915895586 +0200
|
||||||
|
***************
|
||||||
|
*** 2173,2178 ****
|
||||||
|
--- 2173,2179 ----
|
||||||
|
}
|
||||||
|
vim_free(qi->qf_lists[idx].qf_title);
|
||||||
|
qi->qf_lists[idx].qf_title = NULL;
|
||||||
|
+ qi->qf_lists[idx].qf_index = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
*** ../vim-7.4.378/src/version.c 2014-07-23 15:54:43.443903036 +0200
|
||||||
|
--- src/version.c 2014-07-23 16:14:43.995894407 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 379,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
"Lisp has all the visual appeal of oatmeal with nail clippings thrown in."
|
||||||
|
-- Larry Wall
|
||||||
|
|
||||||
|
/// 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 ///
|
115
7.4.380
Normal file
115
7.4.380
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.380
|
||||||
|
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.4.380
|
||||||
|
Problem: Loading python may cause Vim to exit.
|
||||||
|
Solution: Avoid loading the "site" module. (Taro Muraoka)
|
||||||
|
Files: src/if_python.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.379/src/if_python.c 2014-03-30 16:11:37.176530823 +0200
|
||||||
|
--- src/if_python.c 2014-07-23 16:46:42.863880615 +0200
|
||||||
|
***************
|
||||||
|
*** 295,300 ****
|
||||||
|
--- 295,303 ----
|
||||||
|
# define PyCObject_FromVoidPtr dll_PyCObject_FromVoidPtr
|
||||||
|
# define PyCObject_AsVoidPtr dll_PyCObject_AsVoidPtr
|
||||||
|
# endif
|
||||||
|
+ # if defined(PY_VERSION_HEX) && PY_VERSION_HEX >= 0x02070000
|
||||||
|
+ # define Py_NoSiteFlag (*dll_Py_NoSiteFlag)
|
||||||
|
+ # endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Pointers for dynamic link
|
||||||
|
***************
|
||||||
|
*** 440,445 ****
|
||||||
|
--- 443,451 ----
|
||||||
|
static PyObject* (*dll_PyCObject_FromVoidPtr)(void *cobj, void (*destr)(void *));
|
||||||
|
static void* (*dll_PyCObject_AsVoidPtr)(PyObject *);
|
||||||
|
# endif
|
||||||
|
+ # if defined(PY_VERSION_HEX) && PY_VERSION_HEX >= 0x02070000
|
||||||
|
+ static int* dll_Py_NoSiteFlag;
|
||||||
|
+ # endif
|
||||||
|
|
||||||
|
static HINSTANCE hinstPython = 0; /* Instance of python.dll */
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 633,638 ****
|
||||||
|
--- 639,647 ----
|
||||||
|
{"PyCObject_FromVoidPtr", (PYTHON_PROC*)&dll_PyCObject_FromVoidPtr},
|
||||||
|
{"PyCObject_AsVoidPtr", (PYTHON_PROC*)&dll_PyCObject_AsVoidPtr},
|
||||||
|
# endif
|
||||||
|
+ # if defined(PY_VERSION_HEX) && PY_VERSION_HEX >= 0x02070000
|
||||||
|
+ {"Py_NoSiteFlag", (PYTHON_PROC*)&dll_Py_NoSiteFlag},
|
||||||
|
+ # endif
|
||||||
|
{"", NULL},
|
||||||
|
};
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 901,906 ****
|
||||||
|
--- 910,919 ----
|
||||||
|
{
|
||||||
|
if (!initialised)
|
||||||
|
{
|
||||||
|
+ #if defined(PY_VERSION_HEX) && PY_VERSION_HEX >= 0x02070000
|
||||||
|
+ PyObject *site;
|
||||||
|
+ #endif
|
||||||
|
+
|
||||||
|
#ifdef DYNAMIC_PYTHON
|
||||||
|
if (!python_enabled(TRUE))
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 915,925 ****
|
||||||
|
--- 928,956 ----
|
||||||
|
|
||||||
|
init_structs();
|
||||||
|
|
||||||
|
+ #if defined(PY_VERSION_HEX) && PY_VERSION_HEX >= 0x02070000
|
||||||
|
+ /* Disable implicit 'import site', because it may cause Vim to exit
|
||||||
|
+ * when it can't be found. */
|
||||||
|
+ Py_NoSiteFlag++;
|
||||||
|
+ #endif
|
||||||
|
+
|
||||||
|
#if !defined(MACOS) || defined(MACOS_X_UNIX)
|
||||||
|
Py_Initialize();
|
||||||
|
#else
|
||||||
|
PyMac_Initialize();
|
||||||
|
#endif
|
||||||
|
+
|
||||||
|
+ #if defined(PY_VERSION_HEX) && PY_VERSION_HEX >= 0x02070000
|
||||||
|
+ /* 'import site' explicitly. */
|
||||||
|
+ site = PyImport_ImportModule("site");
|
||||||
|
+ if (site == NULL)
|
||||||
|
+ {
|
||||||
|
+ EMSG(_("E887: Sorry, this command is disabled, the Python's site module could not be loaded."));
|
||||||
|
+ goto fail;
|
||||||
|
+ }
|
||||||
|
+ Py_DECREF(site);
|
||||||
|
+ #endif
|
||||||
|
+
|
||||||
|
/* Initialise threads, and below save the state using
|
||||||
|
* PyEval_SaveThread. Without the call to PyEval_SaveThread, thread
|
||||||
|
* specific state (such as the system trace hook), will be lost
|
||||||
|
*** ../vim-7.4.379/src/version.c 2014-07-23 16:33:04.079886500 +0200
|
||||||
|
--- src/version.c 2014-07-23 16:43:47.939881872 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 380,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Looking at Perl through Lisp glasses, Perl looks atrocious.
|
||||||
|
|
||||||
|
/// 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 ///
|
45
7.4.381
Normal file
45
7.4.381
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.381
|
||||||
|
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.4.381
|
||||||
|
Problem: Get u_undo error when backspacing in Insert mode deletes more than
|
||||||
|
one line break. (Ayberk Ozgur)
|
||||||
|
Solution: Also decrement Insstart.lnum.
|
||||||
|
Files: src/edit.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.380/src/edit.c 2014-07-23 13:50:41.839956521 +0200
|
||||||
|
--- src/edit.c 2014-07-23 17:35:05.747859751 +0200
|
||||||
|
***************
|
||||||
|
*** 8833,8838 ****
|
||||||
|
--- 8833,8839 ----
|
||||||
|
return FALSE;
|
||||||
|
--Insstart_orig.lnum;
|
||||||
|
Insstart_orig.col = MAXCOL;
|
||||||
|
+ Insstart = Insstart_orig;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
* In replace mode:
|
||||||
|
*** ../vim-7.4.380/src/version.c 2014-07-23 16:56:56.587876204 +0200
|
||||||
|
--- src/version.c 2014-07-23 17:38:54.467858107 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 381,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Friends? I have lots of friends! In fact, I have all episodes ever made.
|
||||||
|
|
||||||
|
/// 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.4.382
Normal file
52
7.4.382
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.382
|
||||||
|
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.4.382
|
||||||
|
Problem: Mapping characters may not work after typing Esc in Insert mode.
|
||||||
|
Solution: Fix the noremap flags for inserted characters. (Jacob Niehus)
|
||||||
|
Files: src/getchar.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.381/src/getchar.c 2014-06-25 14:39:35.102348584 +0200
|
||||||
|
--- src/getchar.c 2014-07-23 20:10:25.651792765 +0200
|
||||||
|
***************
|
||||||
|
*** 2731,2736 ****
|
||||||
|
--- 2731,2741 ----
|
||||||
|
}
|
||||||
|
if (c < 0)
|
||||||
|
continue; /* end of input script reached */
|
||||||
|
+
|
||||||
|
+ /* Allow mapping for just typed characters. When we get here c
|
||||||
|
+ * is the number of extra bytes and typebuf.tb_len is 1. */
|
||||||
|
+ for (n = 1; n <= c; ++n)
|
||||||
|
+ typebuf.tb_noremap[typebuf.tb_off + n] = RM_YES;
|
||||||
|
typebuf.tb_len += c;
|
||||||
|
|
||||||
|
/* buffer full, don't map */
|
||||||
|
*** ../vim-7.4.381/src/version.c 2014-07-23 17:39:21.815857910 +0200
|
||||||
|
--- src/version.c 2014-07-23 18:26:42.663837492 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 382,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
DENNIS: Oh, very nice. King, eh! I expect you've got a palace and fine
|
||||||
|
clothes and courtiers and plenty of food. And how d'you get that? By
|
||||||
|
exploiting the workers! By hanging on to outdated imperialist dogma
|
||||||
|
which perpetuates the social and economic differences in our society!
|
||||||
|
"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 ///
|
52
7.4.383
Normal file
52
7.4.383
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.383
|
||||||
|
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.4.383
|
||||||
|
Problem: Bad interaction between preview window and omnifunc.
|
||||||
|
Solution: Avoid redrawing the status line. (Hirohito Higashi)
|
||||||
|
Files: src/popupmnu.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.382/src/popupmnu.c 2014-07-09 19:58:21.111647328 +0200
|
||||||
|
--- src/popupmnu.c 2014-07-23 20:56:17.131772989 +0200
|
||||||
|
***************
|
||||||
|
*** 643,648 ****
|
||||||
|
--- 643,654 ----
|
||||||
|
|
||||||
|
if (curwin != curwin_save && win_valid(curwin_save))
|
||||||
|
{
|
||||||
|
+ /* When the first completion is done and the preview
|
||||||
|
+ * window is not resized, skip the preview window's
|
||||||
|
+ * status line redrawing. */
|
||||||
|
+ if (ins_compl_active() && !resized)
|
||||||
|
+ curwin->w_redr_status = FALSE;
|
||||||
|
+
|
||||||
|
/* Return cursor to where we were */
|
||||||
|
validate_cursor();
|
||||||
|
redraw_later(SOME_VALID);
|
||||||
|
*** ../vim-7.4.382/src/version.c 2014-07-23 20:41:09.895779510 +0200
|
||||||
|
--- src/version.c 2014-07-23 20:58:12.079772163 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 383,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
ARTHUR: ... and I am your king ....
|
||||||
|
OLD WOMAN: Ooooh! I didn't know we had a king. I thought we were an
|
||||||
|
autonomous collective ...
|
||||||
|
"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 ///
|
47
7.4.384
Normal file
47
7.4.384
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.384
|
||||||
|
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.4.384
|
||||||
|
Problem: Test 102 fails when compiled with small features.
|
||||||
|
Solution: Source small.vim. (Jacob Niehus)
|
||||||
|
Files: src/testdir/test102.in
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.383/src/testdir/test102.in 2013-11-12 05:28:08.000000000 +0100
|
||||||
|
--- src/testdir/test102.in 2014-07-27 21:10:34.881282860 +0200
|
||||||
|
***************
|
||||||
|
*** 1,6 ****
|
||||||
|
--- 1,7 ----
|
||||||
|
Test if fnameescape is correct for special chars like !
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
+ :so small.vim
|
||||||
|
:%d
|
||||||
|
:let fname = 'Xspa ce'
|
||||||
|
:try | exe "w! " . fnameescape(fname) | put='Space' | endtry
|
||||||
|
*** ../vim-7.4.383/src/version.c 2014-07-23 21:10:39.867766788 +0200
|
||||||
|
--- src/version.c 2014-07-30 13:15:18.047624849 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 384,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
An easy way to determine if you have enough teamwork to be doomed is simply to
|
||||||
|
measure how long it takes from the time you decide to go to lunch together
|
||||||
|
until the time you actually eat.
|
||||||
|
(Scott Adams - The Dilbert principle)
|
||||||
|
|
||||||
|
/// 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 ///
|
76
7.4.385
Normal file
76
7.4.385
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.385
|
||||||
|
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.4.385
|
||||||
|
Problem: When building with tiny or small features building the .mo files
|
||||||
|
fails.
|
||||||
|
Solution: In autoconf do not setup for building the .mo files when it would
|
||||||
|
fail.
|
||||||
|
Files: src/configure.in, src/auto/configure
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.384/src/configure.in 2014-05-22 14:44:08.094481148 +0200
|
||||||
|
--- src/configure.in 2014-07-27 21:26:39.349275928 +0200
|
||||||
|
***************
|
||||||
|
*** 3818,3824 ****
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT([msgfmt not found - disabled]);
|
||||||
|
fi
|
||||||
|
! if test $have_gettext = "yes"; then
|
||||||
|
AC_DEFINE(HAVE_GETTEXT)
|
||||||
|
MAKEMO=yes
|
||||||
|
AC_SUBST(MAKEMO)
|
||||||
|
--- 3818,3824 ----
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT([msgfmt not found - disabled]);
|
||||||
|
fi
|
||||||
|
! if test $have_gettext = "yes" -a "x$features" != "xtiny" -a "x$features" != "xsmall"; then
|
||||||
|
AC_DEFINE(HAVE_GETTEXT)
|
||||||
|
MAKEMO=yes
|
||||||
|
AC_SUBST(MAKEMO)
|
||||||
|
*** ../vim-7.4.384/src/auto/configure 2014-05-22 14:44:08.098481148 +0200
|
||||||
|
--- src/auto/configure 2014-07-27 21:26:41.969275909 +0200
|
||||||
|
***************
|
||||||
|
*** 12966,12972 ****
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: msgfmt not found - disabled" >&5
|
||||||
|
$as_echo "msgfmt not found - disabled" >&6; };
|
||||||
|
fi
|
||||||
|
! if test $have_gettext = "yes"; then
|
||||||
|
$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h
|
||||||
|
|
||||||
|
MAKEMO=yes
|
||||||
|
--- 12966,12972 ----
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: msgfmt not found - disabled" >&5
|
||||||
|
$as_echo "msgfmt not found - disabled" >&6; };
|
||||||
|
fi
|
||||||
|
! if test $have_gettext = "yes" -a "x$features" != "xtiny" -a "x$features" != "xsmall"; then
|
||||||
|
$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h
|
||||||
|
|
||||||
|
MAKEMO=yes
|
||||||
|
*** ../vim-7.4.384/src/version.c 2014-07-30 13:20:35.719622565 +0200
|
||||||
|
--- src/version.c 2014-07-30 13:22:07.295621907 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 385,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
"You're fired." (1980)
|
||||||
|
"You're laid off." (1985)
|
||||||
|
"You're downsized." (1990)
|
||||||
|
"You're rightsized." (1992)
|
||||||
|
(Scott Adams - The Dilbert principle)
|
||||||
|
|
||||||
|
/// 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 ///
|
186
7.4.386
Normal file
186
7.4.386
Normal file
@ -0,0 +1,186 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.386
|
||||||
|
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.4.386
|
||||||
|
Problem: When splitting a window the changelist position is wrong.
|
||||||
|
Solution: Copy the changelist position. (Jacob Niehus)
|
||||||
|
Files: src/window.c, src/testdir/Make_amiga.mak,
|
||||||
|
src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
|
||||||
|
src/testdir/Make_os2.mak, src/testdir/Make_vms.mms,
|
||||||
|
src/testdir/Makefile, src/testdir/test_changelist.in,
|
||||||
|
src/testdir/test_changelist.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.385/src/window.c 2014-07-23 15:21:16.247917462 +0200
|
||||||
|
--- src/window.c 2014-07-30 13:55:49.275607374 +0200
|
||||||
|
***************
|
||||||
|
*** 1178,1183 ****
|
||||||
|
--- 1178,1188 ----
|
||||||
|
p_wh = size;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ #ifdef FEAT_JUMPLIST
|
||||||
|
+ /* Keep same changelist position in new window. */
|
||||||
|
+ wp->w_changelistidx = oldwin->w_changelistidx;
|
||||||
|
+ #endif
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* make the new window the current window
|
||||||
|
*/
|
||||||
|
*** ../vim-7.4.385/src/testdir/Make_amiga.mak 2014-07-23 15:54:43.443903036 +0200
|
||||||
|
--- src/testdir/Make_amiga.mak 2014-07-30 13:54:06.871608110 +0200
|
||||||
|
***************
|
||||||
|
*** 41,46 ****
|
||||||
|
--- 41,47 ----
|
||||||
|
test_listlbr.out \
|
||||||
|
test_listlbr_utf8.out \
|
||||||
|
test_qf_title.out \
|
||||||
|
+ test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 171,175 ****
|
||||||
|
--- 172,177 ----
|
||||||
|
test_listlbr.out: test_listlbr.in
|
||||||
|
test_listlbr_utf8.out: test_listlbr_utf8.in
|
||||||
|
test_qf_title.out: test_qf_title.in
|
||||||
|
+ test_changelist.out: test_changelist.in
|
||||||
|
test_eval.out: test_eval.in
|
||||||
|
test_options.out: test_options.in
|
||||||
|
*** ../vim-7.4.385/src/testdir/Make_dos.mak 2014-07-23 15:54:43.443903036 +0200
|
||||||
|
--- src/testdir/Make_dos.mak 2014-07-30 13:54:16.091608044 +0200
|
||||||
|
***************
|
||||||
|
*** 40,45 ****
|
||||||
|
--- 40,46 ----
|
||||||
|
test_listlbr.out \
|
||||||
|
test_listlbr_utf8.out \
|
||||||
|
test_qf_title.out \
|
||||||
|
+ test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.385/src/testdir/Make_ming.mak 2014-07-23 15:54:43.443903036 +0200
|
||||||
|
--- src/testdir/Make_ming.mak 2014-07-30 13:54:19.775608018 +0200
|
||||||
|
***************
|
||||||
|
*** 60,65 ****
|
||||||
|
--- 60,66 ----
|
||||||
|
test_listlbr.out \
|
||||||
|
test_listlbr_utf8.out \
|
||||||
|
test_qf_title.out \
|
||||||
|
+ test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.385/src/testdir/Make_os2.mak 2014-07-23 15:54:43.443903036 +0200
|
||||||
|
--- src/testdir/Make_os2.mak 2014-07-30 13:54:24.207607986 +0200
|
||||||
|
***************
|
||||||
|
*** 38,43 ****
|
||||||
|
--- 38,44 ----
|
||||||
|
test100.out test101.out test102.out test103.out test104.out \
|
||||||
|
test105.out test106.out test107.out \
|
||||||
|
test_autoformat_join.out \
|
||||||
|
+ test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
*** ../vim-7.4.385/src/testdir/Make_vms.mms 2014-07-23 15:54:43.443903036 +0200
|
||||||
|
--- src/testdir/Make_vms.mms 2014-07-30 13:54:31.151607936 +0200
|
||||||
|
***************
|
||||||
|
*** 4,10 ****
|
||||||
|
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||||
|
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||||
|
#
|
||||||
|
! # Last change: 2014 Jul 23
|
||||||
|
#
|
||||||
|
# This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
|
||||||
|
# Edit the lines in the Configuration section below to select.
|
||||||
|
--- 4,10 ----
|
||||||
|
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||||
|
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||||
|
#
|
||||||
|
! # Last change: 2014 Jul 30
|
||||||
|
#
|
||||||
|
# This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
|
||||||
|
# Edit the lines in the Configuration section below to select.
|
||||||
|
***************
|
||||||
|
*** 101,106 ****
|
||||||
|
--- 101,107 ----
|
||||||
|
test_listlbr.out \
|
||||||
|
test_listlbr_utf8.out \
|
||||||
|
test_qf_title.out \
|
||||||
|
+ test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.385/src/testdir/Makefile 2014-07-23 15:54:43.443903036 +0200
|
||||||
|
--- src/testdir/Makefile 2014-07-30 13:54:45.291607834 +0200
|
||||||
|
***************
|
||||||
|
*** 38,43 ****
|
||||||
|
--- 38,44 ----
|
||||||
|
test_listlbr.out \
|
||||||
|
test_listlbr_utf8.out \
|
||||||
|
test_qf_title.out \
|
||||||
|
+ test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
*** ../vim-7.4.385/src/testdir/test_changelist.in 2014-07-30 14:04:27.507603650 +0200
|
||||||
|
--- src/testdir/test_changelist.in 2014-07-30 13:52:21.363608869 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,22 ----
|
||||||
|
+ Test changelist position after splitting window
|
||||||
|
+ Set 'undolevels' to make changelist for sourced file
|
||||||
|
+
|
||||||
|
+ STARTTEST
|
||||||
|
+ :so small.vim
|
||||||
|
+ Gkylp:set ul=100
|
||||||
|
+ Gylp:set ul=100
|
||||||
|
+ gg
|
||||||
|
+ :vsplit
|
||||||
|
+ :try
|
||||||
|
+ : normal g;
|
||||||
|
+ : normal ggVGcpass
|
||||||
|
+ :catch
|
||||||
|
+ : normal ggVGcfail
|
||||||
|
+ :finally
|
||||||
|
+ : %w! test.out
|
||||||
|
+ :endtry
|
||||||
|
+ :qa!
|
||||||
|
+ ENDTEST
|
||||||
|
+
|
||||||
|
+ 1
|
||||||
|
+ 2
|
||||||
|
*** ../vim-7.4.385/src/testdir/test_changelist.ok 2014-07-30 14:04:27.515603650 +0200
|
||||||
|
--- src/testdir/test_changelist.ok 2014-07-30 13:53:41.991608289 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1 ----
|
||||||
|
+ pass
|
||||||
|
*** ../vim-7.4.385/src/version.c 2014-07-30 13:22:48.271621613 +0200
|
||||||
|
--- src/version.c 2014-07-30 13:56:49.951606938 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 386,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Our job was to build a computer information system for the branch banks. We
|
||||||
|
were the perfect people for the job: Dean had seen a computer once, and I had
|
||||||
|
heard Dean talk about it.
|
||||||
|
(Scott Adams - The Dilbert principle)
|
||||||
|
|
||||||
|
/// 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 ///
|
199
7.4.387
Normal file
199
7.4.387
Normal file
@ -0,0 +1,199 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.387
|
||||||
|
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.4.387
|
||||||
|
Problem: "4gro" replaces one character then executes "ooo". (Urtica Dioica)
|
||||||
|
Solution: Write the ESC in the second stuff buffer.
|
||||||
|
Files: src/getchar.c, src/proto/getchar.pro, src/edit.c,
|
||||||
|
src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
|
||||||
|
src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
|
||||||
|
src/testdir/Make_vms.mms, src/testdir/Makefile,
|
||||||
|
src/testdir/test_insertcount.in, src/testdir/test_insertcount.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.386/src/getchar.c 2014-07-23 20:41:09.891779510 +0200
|
||||||
|
--- src/getchar.c 2014-07-30 14:35:08.831590415 +0200
|
||||||
|
***************
|
||||||
|
*** 678,683 ****
|
||||||
|
--- 678,694 ----
|
||||||
|
add_buff(&readbuf1, s, -1L);
|
||||||
|
}
|
||||||
|
|
||||||
|
+ /*
|
||||||
|
+ * Append string "s" to the redo stuff buffer.
|
||||||
|
+ * CSI and K_SPECIAL must already have been escaped.
|
||||||
|
+ */
|
||||||
|
+ void
|
||||||
|
+ stuffRedoReadbuff(s)
|
||||||
|
+ char_u *s;
|
||||||
|
+ {
|
||||||
|
+ add_buff(&readbuf2, s, -1L);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
void
|
||||||
|
stuffReadbuffLen(s, len)
|
||||||
|
char_u *s;
|
||||||
|
*** ../vim-7.4.386/src/proto/getchar.pro 2014-02-11 15:10:38.134111836 +0100
|
||||||
|
--- src/proto/getchar.pro 2014-07-30 14:36:18.851589912 +0200
|
||||||
|
***************
|
||||||
|
*** 15,20 ****
|
||||||
|
--- 15,21 ----
|
||||||
|
void AppendCharToRedobuff __ARGS((int c));
|
||||||
|
void AppendNumberToRedobuff __ARGS((long n));
|
||||||
|
void stuffReadbuff __ARGS((char_u *s));
|
||||||
|
+ void stuffRedoReadbuff __ARGS((char_u *s));
|
||||||
|
void stuffReadbuffLen __ARGS((char_u *s, long len));
|
||||||
|
void stuffReadbuffSpec __ARGS((char_u *s));
|
||||||
|
void stuffcharReadbuff __ARGS((int c));
|
||||||
|
*** ../vim-7.4.386/src/edit.c 2014-07-23 17:39:21.815857910 +0200
|
||||||
|
--- src/edit.c 2014-07-30 14:47:56.875584895 +0200
|
||||||
|
***************
|
||||||
|
*** 8389,8395 ****
|
||||||
|
|
||||||
|
(void)start_redo_ins();
|
||||||
|
if (cmdchar == 'r' || cmdchar == 'v')
|
||||||
|
! stuffReadbuff(ESC_STR); /* no ESC in redo buffer */
|
||||||
|
++RedrawingDisabled;
|
||||||
|
disabled_redraw = TRUE;
|
||||||
|
return FALSE; /* repeat the insert */
|
||||||
|
--- 8389,8395 ----
|
||||||
|
|
||||||
|
(void)start_redo_ins();
|
||||||
|
if (cmdchar == 'r' || cmdchar == 'v')
|
||||||
|
! stuffRedoReadbuff(ESC_STR); /* no ESC in redo buffer */
|
||||||
|
++RedrawingDisabled;
|
||||||
|
disabled_redraw = TRUE;
|
||||||
|
return FALSE; /* repeat the insert */
|
||||||
|
*** ../vim-7.4.386/src/testdir/Make_amiga.mak 2014-07-30 14:04:49.131603494 +0200
|
||||||
|
--- src/testdir/Make_amiga.mak 2014-07-30 15:57:52.819554737 +0200
|
||||||
|
***************
|
||||||
|
*** 43,48 ****
|
||||||
|
--- 43,49 ----
|
||||||
|
test_qf_title.out \
|
||||||
|
test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
+ test_insertcount.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
.SUFFIXES: .in .out
|
||||||
|
***************
|
||||||
|
*** 174,177 ****
|
||||||
|
--- 175,179 ----
|
||||||
|
test_qf_title.out: test_qf_title.in
|
||||||
|
test_changelist.out: test_changelist.in
|
||||||
|
test_eval.out: test_eval.in
|
||||||
|
+ test_insertcount.out: test_insertcount.in
|
||||||
|
test_options.out: test_options.in
|
||||||
|
*** ../vim-7.4.386/src/testdir/Make_dos.mak 2014-07-30 14:04:49.131603494 +0200
|
||||||
|
--- src/testdir/Make_dos.mak 2014-07-30 15:57:59.071554692 +0200
|
||||||
|
***************
|
||||||
|
*** 42,47 ****
|
||||||
|
--- 42,48 ----
|
||||||
|
test_qf_title.out \
|
||||||
|
test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
+ test_insertcount.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
SCRIPTS32 = test50.out test70.out
|
||||||
|
*** ../vim-7.4.386/src/testdir/Make_ming.mak 2014-07-30 14:04:49.131603494 +0200
|
||||||
|
--- src/testdir/Make_ming.mak 2014-07-30 15:58:02.351554669 +0200
|
||||||
|
***************
|
||||||
|
*** 62,67 ****
|
||||||
|
--- 62,68 ----
|
||||||
|
test_qf_title.out \
|
||||||
|
test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
+ test_insertcount.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
SCRIPTS32 = test50.out test70.out
|
||||||
|
*** ../vim-7.4.386/src/testdir/Make_os2.mak 2014-07-30 14:04:49.131603494 +0200
|
||||||
|
--- src/testdir/Make_os2.mak 2014-07-30 15:58:05.975554643 +0200
|
||||||
|
***************
|
||||||
|
*** 40,45 ****
|
||||||
|
--- 40,46 ----
|
||||||
|
test_autoformat_join.out \
|
||||||
|
test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
+ test_insertcount.out \
|
||||||
|
test_breakindent.out \
|
||||||
|
test_listlbr.out \
|
||||||
|
test_listlbr_utf8.out \
|
||||||
|
*** ../vim-7.4.386/src/testdir/Make_vms.mms 2014-07-30 14:04:49.131603494 +0200
|
||||||
|
--- src/testdir/Make_vms.mms 2014-07-30 15:58:10.099554613 +0200
|
||||||
|
***************
|
||||||
|
*** 103,108 ****
|
||||||
|
--- 103,109 ----
|
||||||
|
test_qf_title.out \
|
||||||
|
test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
+ test_insertcount.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
# Known problems:
|
||||||
|
*** ../vim-7.4.386/src/testdir/Makefile 2014-07-30 14:04:49.131603494 +0200
|
||||||
|
--- src/testdir/Makefile 2014-07-30 15:58:16.539554567 +0200
|
||||||
|
***************
|
||||||
|
*** 40,45 ****
|
||||||
|
--- 40,46 ----
|
||||||
|
test_qf_title.out \
|
||||||
|
test_changelist.out \
|
||||||
|
test_eval.out \
|
||||||
|
+ test_insertcount.out \
|
||||||
|
test_options.out
|
||||||
|
|
||||||
|
SCRIPTS_GUI = test16.out
|
||||||
|
*** ../vim-7.4.386/src/testdir/test_insertcount.in 2014-07-30 15:56:12.087555461 +0200
|
||||||
|
--- src/testdir/test_insertcount.in 2014-07-30 14:47:36.335585043 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,14 ----
|
||||||
|
+ Tests for repeating insert and replace.
|
||||||
|
+
|
||||||
|
+ STARTTEST
|
||||||
|
+ :so small.vim
|
||||||
|
+ :/Second
|
||||||
|
+ 4gro
|
||||||
|
+ :/^First/,$wq! test.out
|
||||||
|
+ :" get here when failed and in Insert mode
|
||||||
|
+ :.wq! test.out
|
||||||
|
+ ENDTEST
|
||||||
|
+
|
||||||
|
+ First line
|
||||||
|
+ Second line
|
||||||
|
+ Last line
|
||||||
|
*** ../vim-7.4.386/src/testdir/test_insertcount.ok 2014-07-30 15:56:12.091555461 +0200
|
||||||
|
--- src/testdir/test_insertcount.ok 2014-07-30 14:45:43.491585854 +0200
|
||||||
|
***************
|
||||||
|
*** 0 ****
|
||||||
|
--- 1,3 ----
|
||||||
|
+ First line
|
||||||
|
+ ooooecond line
|
||||||
|
+ Last line
|
||||||
|
*** ../vim-7.4.386/src/version.c 2014-07-30 14:04:49.131603494 +0200
|
||||||
|
--- src/version.c 2014-07-30 14:48:45.039584549 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 387,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
If your company is not involved in something called "ISO 9000" you probably
|
||||||
|
have no idea what it is. If your company _is_ involved in ISO 9000 then you
|
||||||
|
definitely have no idea what it is.
|
||||||
|
(Scott Adams - The Dilbert principle)
|
||||||
|
|
||||||
|
/// 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 ///
|
98
7.4.388
Normal file
98
7.4.388
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.388
|
||||||
|
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.4.388
|
||||||
|
Problem: With 'linebreak' set and 'list' unset a Tab is not counted
|
||||||
|
properly. (Kent Sibilev)
|
||||||
|
Solution: Check the 'list' option. (Christian Brabandt)
|
||||||
|
Files: src/screen.c, src/testdir/test_listlbr_utf8.in,
|
||||||
|
src/testdir/test_listlbr_utf8.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.387/src/screen.c 2014-07-16 17:29:46.691536252 +0200
|
||||||
|
--- src/screen.c 2014-07-30 16:41:15.167536033 +0200
|
||||||
|
***************
|
||||||
|
*** 4494,4500 ****
|
||||||
|
tab_len = (int)wp->w_buffer->b_p_ts
|
||||||
|
- vcol % (int)wp->w_buffer->b_p_ts - 1;
|
||||||
|
#ifdef FEAT_LINEBREAK
|
||||||
|
! if (!wp->w_p_lbr)
|
||||||
|
#endif
|
||||||
|
/* tab amount depends on current column */
|
||||||
|
n_extra = tab_len;
|
||||||
|
--- 4494,4500 ----
|
||||||
|
tab_len = (int)wp->w_buffer->b_p_ts
|
||||||
|
- vcol % (int)wp->w_buffer->b_p_ts - 1;
|
||||||
|
#ifdef FEAT_LINEBREAK
|
||||||
|
! if (!wp->w_p_lbr || !wp->w_p_list)
|
||||||
|
#endif
|
||||||
|
/* tab amount depends on current column */
|
||||||
|
n_extra = tab_len;
|
||||||
|
*** ../vim-7.4.387/src/testdir/test_listlbr_utf8.in 2014-07-16 17:01:38.279570568 +0200
|
||||||
|
--- src/testdir/test_listlbr_utf8.in 2014-07-30 16:37:26.703537675 +0200
|
||||||
|
***************
|
||||||
|
*** 30,40 ****
|
||||||
|
--- 30,51 ----
|
||||||
|
:redraw!
|
||||||
|
:let line=ScreenChar(winwidth(0))
|
||||||
|
:call DoRecordScreen()
|
||||||
|
+ :"
|
||||||
|
:let g:test ="Test 2: set nolinebreak list"
|
||||||
|
:set list nolinebreak
|
||||||
|
:redraw!
|
||||||
|
:let line=ScreenChar(winwidth(0))
|
||||||
|
:call DoRecordScreen()
|
||||||
|
+ :"
|
||||||
|
+ :let g:test ="Test 3: set linebreak nolist"
|
||||||
|
+ :$put =\"\t*mask = nil;\"
|
||||||
|
+ :$
|
||||||
|
+ :norm! zt
|
||||||
|
+ :set nolist linebreak
|
||||||
|
+ :redraw!
|
||||||
|
+ :let line=ScreenChar(winwidth(0))
|
||||||
|
+ :call DoRecordScreen()
|
||||||
|
+ :"
|
||||||
|
:%w! test.out
|
||||||
|
:qa!
|
||||||
|
ENDTEST
|
||||||
|
*** ../vim-7.4.387/src/testdir/test_listlbr_utf8.ok 2014-07-16 17:01:38.279570568 +0200
|
||||||
|
--- src/testdir/test_listlbr_utf8.ok 2014-07-30 16:40:17.043536451 +0200
|
||||||
|
***************
|
||||||
|
*** 12,14 ****
|
||||||
|
--- 12,21 ----
|
||||||
|
+pqrstuvwxyz␣1060ABC
|
||||||
|
+DEFGHIJKLMNOPˑ¶
|
||||||
|
¶
|
||||||
|
+ *mask = nil;
|
||||||
|
+
|
||||||
|
+ Test 3: set linebreak nolist
|
||||||
|
+ *mask = nil;
|
||||||
|
+ ~
|
||||||
|
+ ~
|
||||||
|
+ ~
|
||||||
|
*** ../vim-7.4.387/src/version.c 2014-07-30 16:00:45.551553496 +0200
|
||||||
|
--- src/version.c 2014-07-30 16:40:57.659536159 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 388,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
You can test a person's importance in the organization by asking how much RAM
|
||||||
|
his computer has. Anybody who knows the answer to that question is not a
|
||||||
|
decision-maker.
|
||||||
|
(Scott Adams - The Dilbert principle)
|
||||||
|
|
||||||
|
/// 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 ///
|
490
7.4.389
Normal file
490
7.4.389
Normal file
@ -0,0 +1,490 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.389
|
||||||
|
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.4.389
|
||||||
|
Problem: Still sometimes Vim enters Replace mode when starting up.
|
||||||
|
Solution: Use a different solution in detecting the termresponse and
|
||||||
|
location response. (Hayaki Saito)
|
||||||
|
Files: src/globals.h, src/os_unix.c, src/term.c, src/proto/term.pro
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.388/src/globals.h 2014-06-12 14:01:27.575769788 +0200
|
||||||
|
--- src/globals.h 2014-07-30 17:02:57.711526671 +0200
|
||||||
|
***************
|
||||||
|
*** 1336,1344 ****
|
||||||
|
#if defined(UNIX) || defined(VMS)
|
||||||
|
EXTERN int term_is_xterm INIT(= FALSE); /* xterm-like 'term' */
|
||||||
|
#endif
|
||||||
|
- #if defined(UNIX)
|
||||||
|
- EXTERN int xterm_conflict_mouse INIT(= FALSE);
|
||||||
|
- #endif
|
||||||
|
|
||||||
|
#ifdef BACKSLASH_IN_FILENAME
|
||||||
|
EXTERN char psepc INIT(= '\\'); /* normal path separator character */
|
||||||
|
--- 1336,1341 ----
|
||||||
|
*** ../vim-7.4.388/src/os_unix.c 2014-07-09 19:13:45.007701718 +0200
|
||||||
|
--- src/os_unix.c 2014-07-30 17:06:02.375525344 +0200
|
||||||
|
***************
|
||||||
|
*** 3667,3674 ****
|
||||||
|
void
|
||||||
|
check_mouse_termcode()
|
||||||
|
{
|
||||||
|
- xterm_conflict_mouse = FALSE;
|
||||||
|
-
|
||||||
|
# ifdef FEAT_MOUSE_XTERM
|
||||||
|
if (use_xterm_mouse()
|
||||||
|
# ifdef FEAT_MOUSE_URXVT
|
||||||
|
--- 3667,3672 ----
|
||||||
|
***************
|
||||||
|
*** 3713,3719 ****
|
||||||
|
# endif
|
||||||
|
|
||||||
|
# ifdef FEAT_MOUSE_JSB
|
||||||
|
! /* There is no conflict, but it was disabled for xterm before. */
|
||||||
|
if (!use_xterm_mouse()
|
||||||
|
# ifdef FEAT_GUI
|
||||||
|
&& !gui.in_use
|
||||||
|
--- 3711,3717 ----
|
||||||
|
# endif
|
||||||
|
|
||||||
|
# ifdef FEAT_MOUSE_JSB
|
||||||
|
! /* Conflicts with xterm mouse: "\033[" and "\033[M" ??? */
|
||||||
|
if (!use_xterm_mouse()
|
||||||
|
# ifdef FEAT_GUI
|
||||||
|
&& !gui.in_use
|
||||||
|
***************
|
||||||
|
*** 3740,3784 ****
|
||||||
|
# endif
|
||||||
|
|
||||||
|
# ifdef FEAT_MOUSE_DEC
|
||||||
|
! /* Conflicts with xterm mouse: "\033[" and "\033[M".
|
||||||
|
! * Also conflicts with the xterm termresponse, skip this if it was
|
||||||
|
! * requested already. */
|
||||||
|
if (!use_xterm_mouse()
|
||||||
|
- # ifdef FEAT_TERMRESPONSE
|
||||||
|
- && !did_request_esc_sequence()
|
||||||
|
- # endif
|
||||||
|
# ifdef FEAT_GUI
|
||||||
|
&& !gui.in_use
|
||||||
|
# endif
|
||||||
|
)
|
||||||
|
- {
|
||||||
|
set_mouse_termcode(KS_DEC_MOUSE, (char_u *)(term_is_8bit(T_NAME)
|
||||||
|
? IF_EB("\233", CSI_STR) : IF_EB("\033[", ESC_STR "[")));
|
||||||
|
- xterm_conflict_mouse = TRUE;
|
||||||
|
- }
|
||||||
|
else
|
||||||
|
del_mouse_termcode(KS_DEC_MOUSE);
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_PTERM
|
||||||
|
! /* same as the dec mouse */
|
||||||
|
if (!use_xterm_mouse()
|
||||||
|
- # ifdef FEAT_TERMRESPONSE
|
||||||
|
- && !did_request_esc_sequence()
|
||||||
|
- # endif
|
||||||
|
# ifdef FEAT_GUI
|
||||||
|
&& !gui.in_use
|
||||||
|
# endif
|
||||||
|
)
|
||||||
|
- {
|
||||||
|
set_mouse_termcode(KS_PTERM_MOUSE,
|
||||||
|
(char_u *) IF_EB("\033[", ESC_STR "["));
|
||||||
|
- xterm_conflict_mouse = TRUE;
|
||||||
|
- }
|
||||||
|
else
|
||||||
|
del_mouse_termcode(KS_PTERM_MOUSE);
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_URXVT
|
||||||
|
! /* same as the dec mouse */
|
||||||
|
if (use_xterm_mouse() == 3
|
||||||
|
# ifdef FEAT_GUI
|
||||||
|
&& !gui.in_use
|
||||||
|
--- 3738,3768 ----
|
||||||
|
# endif
|
||||||
|
|
||||||
|
# ifdef FEAT_MOUSE_DEC
|
||||||
|
! /* Conflicts with xterm mouse: "\033[" and "\033[M" */
|
||||||
|
if (!use_xterm_mouse()
|
||||||
|
# ifdef FEAT_GUI
|
||||||
|
&& !gui.in_use
|
||||||
|
# endif
|
||||||
|
)
|
||||||
|
set_mouse_termcode(KS_DEC_MOUSE, (char_u *)(term_is_8bit(T_NAME)
|
||||||
|
? IF_EB("\233", CSI_STR) : IF_EB("\033[", ESC_STR "[")));
|
||||||
|
else
|
||||||
|
del_mouse_termcode(KS_DEC_MOUSE);
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_PTERM
|
||||||
|
! /* same conflict as the dec mouse */
|
||||||
|
if (!use_xterm_mouse()
|
||||||
|
# ifdef FEAT_GUI
|
||||||
|
&& !gui.in_use
|
||||||
|
# endif
|
||||||
|
)
|
||||||
|
set_mouse_termcode(KS_PTERM_MOUSE,
|
||||||
|
(char_u *) IF_EB("\033[", ESC_STR "["));
|
||||||
|
else
|
||||||
|
del_mouse_termcode(KS_PTERM_MOUSE);
|
||||||
|
# endif
|
||||||
|
# ifdef FEAT_MOUSE_URXVT
|
||||||
|
! /* same conflict as the dec mouse */
|
||||||
|
if (use_xterm_mouse() == 3
|
||||||
|
# ifdef FEAT_GUI
|
||||||
|
&& !gui.in_use
|
||||||
|
***************
|
||||||
|
*** 3794,3801 ****
|
||||||
|
mch_setmouse(FALSE);
|
||||||
|
setmouse();
|
||||||
|
}
|
||||||
|
- /* It's OK to request the xterm version for uxterm. */
|
||||||
|
- resume_get_esc_sequence();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
del_mouse_termcode(KS_URXVT_MOUSE);
|
||||||
|
--- 3778,3783 ----
|
||||||
|
*** ../vim-7.4.388/src/term.c 2014-07-09 20:51:04.519583033 +0200
|
||||||
|
--- src/term.c 2014-07-30 17:20:54.915518929 +0200
|
||||||
|
***************
|
||||||
|
*** 153,163 ****
|
||||||
|
static char_u *vim_tgetstr __ARGS((char *s, char_u **pp));
|
||||||
|
#endif /* HAVE_TGETENT */
|
||||||
|
|
||||||
|
- #if defined(FEAT_TERMRESPONSE)
|
||||||
|
- static int xt_index_in = 0;
|
||||||
|
- static int xt_index_out = 0;
|
||||||
|
- #endif
|
||||||
|
-
|
||||||
|
static int detected_8bit = FALSE; /* detected 8-bit terminal */
|
||||||
|
|
||||||
|
static struct builtin_term builtin_termcaps[] =
|
||||||
|
--- 153,158 ----
|
||||||
|
***************
|
||||||
|
*** 3312,3351 ****
|
||||||
|
}
|
||||||
|
|
||||||
|
#if defined(FEAT_TERMRESPONSE) || defined(PROTO)
|
||||||
|
- # if defined(UNIX) || defined(PROTO)
|
||||||
|
- /*
|
||||||
|
- * Return TRUE when the xterm version was requested or anything else that
|
||||||
|
- * would send an ESC sequence back to Vim.
|
||||||
|
- * If not sent yet, prevent it from being sent soon.
|
||||||
|
- * Used to check whether it is OK to enable checking for DEC mouse codes,
|
||||||
|
- * which conflict with may xterm ESC sequences.
|
||||||
|
- */
|
||||||
|
- int
|
||||||
|
- did_request_esc_sequence()
|
||||||
|
- {
|
||||||
|
- if (crv_status == CRV_GET)
|
||||||
|
- crv_status = 0;
|
||||||
|
- if (u7_status == U7_GET)
|
||||||
|
- u7_status = 0;
|
||||||
|
- return crv_status == CRV_SENT || u7_status == U7_SENT
|
||||||
|
- || xt_index_out > xt_index_in;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- /*
|
||||||
|
- * If requesting the version was disabled in did_request_esc_sequence(),
|
||||||
|
- * enable it again.
|
||||||
|
- */
|
||||||
|
- void
|
||||||
|
- resume_get_esc_sequence()
|
||||||
|
- {
|
||||||
|
- if (crv_status == 0)
|
||||||
|
- crv_status = CRV_GET;
|
||||||
|
- if (u7_status == 0)
|
||||||
|
- u7_status = U7_GET;
|
||||||
|
- }
|
||||||
|
- # endif
|
||||||
|
-
|
||||||
|
-
|
||||||
|
/*
|
||||||
|
* Request version string (for xterm) when needed.
|
||||||
|
* Only do this after switching to raw mode, otherwise the result will be
|
||||||
|
--- 3307,3312 ----
|
||||||
|
***************
|
||||||
|
*** 3358,3365 ****
|
||||||
|
* Insert mode.
|
||||||
|
* On Unix only do it when both output and input are a tty (avoid writing
|
||||||
|
* request to terminal while reading from a file).
|
||||||
|
- * Do not do this when a mouse is being detected that starts with the same ESC
|
||||||
|
- * sequence as the termresponse.
|
||||||
|
* The result is caught in check_termcode().
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
--- 3319,3324 ----
|
||||||
|
***************
|
||||||
|
*** 3373,3379 ****
|
||||||
|
# ifdef UNIX
|
||||||
|
&& isatty(1)
|
||||||
|
&& isatty(read_cmd_fd)
|
||||||
|
- && !xterm_conflict_mouse
|
||||||
|
# endif
|
||||||
|
&& *T_CRV != NUL)
|
||||||
|
{
|
||||||
|
--- 3332,3337 ----
|
||||||
|
***************
|
||||||
|
*** 3742,3749 ****
|
||||||
|
#if defined(WIN3264) && !defined(FEAT_GUI)
|
||||||
|
if (s[0] == K_NUL)
|
||||||
|
{
|
||||||
|
! STRMOVE(s + 1, s);
|
||||||
|
! s[1] = 3;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
--- 3700,3707 ----
|
||||||
|
#if defined(WIN3264) && !defined(FEAT_GUI)
|
||||||
|
if (s[0] == K_NUL)
|
||||||
|
{
|
||||||
|
! STRMOVE(s + 1, s);
|
||||||
|
! s[1] = 3;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 4212,4235 ****
|
||||||
|
|
||||||
|
#ifdef FEAT_TERMRESPONSE
|
||||||
|
if (key_name[0] == NUL
|
||||||
|
! /* URXVT mouse uses <ESC>[#;#;#M, but we are matching <ESC>[ */
|
||||||
|
|| key_name[0] == KS_URXVT_MOUSE
|
||||||
|
- # ifdef FEAT_MBYTE
|
||||||
|
- || u7_status == U7_SENT
|
||||||
|
# endif
|
||||||
|
! )
|
||||||
|
{
|
||||||
|
! /* Check for some responses from terminal start with "<Esc>[" or
|
||||||
|
! * CSI.
|
||||||
|
*
|
||||||
|
! * - xterm version string: <Esc>[>{x};{vers};{y}c
|
||||||
|
* Also eat other possible responses to t_RV, rxvt returns
|
||||||
|
* "<Esc>[?1;2c". Also accept CSI instead of <Esc>[.
|
||||||
|
* mrxvt has been reported to have "+" in the version. Assume
|
||||||
|
* the escape sequence ends with a letter or one of "{|}~".
|
||||||
|
*
|
||||||
|
! * - cursor position report: <Esc>[{row};{col}R
|
||||||
|
! * The final byte is 'R'. now it is only used for checking for
|
||||||
|
* ambiguous-width character state.
|
||||||
|
*/
|
||||||
|
p = tp[0] == CSI ? tp + 1 : tp + 2;
|
||||||
|
--- 4170,4200 ----
|
||||||
|
|
||||||
|
#ifdef FEAT_TERMRESPONSE
|
||||||
|
if (key_name[0] == NUL
|
||||||
|
! /* Mouse codes of DEC, pterm, and URXVT start with <ESC>[. When
|
||||||
|
! * detecting the start of these mouse codes they might as well be
|
||||||
|
! * another key code or terminal response. */
|
||||||
|
! # 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
|
||||||
|
! )
|
||||||
|
{
|
||||||
|
! /* Check for some responses from the terminal starting with
|
||||||
|
! * "<Esc>[" or CSI:
|
||||||
|
*
|
||||||
|
! * - Xterm version string: <Esc>[>{x};{vers};{y}c
|
||||||
|
* Also eat other possible responses to t_RV, rxvt returns
|
||||||
|
* "<Esc>[?1;2c". Also accept CSI instead of <Esc>[.
|
||||||
|
* mrxvt has been reported to have "+" in the version. Assume
|
||||||
|
* the escape sequence ends with a letter or one of "{|}~".
|
||||||
|
*
|
||||||
|
! * - Cursor position report: <Esc>[{row};{col}R
|
||||||
|
! * The final byte must be 'R'. It is used for checking the
|
||||||
|
* ambiguous-width character state.
|
||||||
|
*/
|
||||||
|
p = tp[0] == CSI ? tp + 1 : tp + 2;
|
||||||
|
***************
|
||||||
|
*** 4269,4304 ****
|
||||||
|
* u7_status is not "sent", it may be from a previous Vim that
|
||||||
|
* just exited. But not for <S-F3>, it sends something
|
||||||
|
* similar, check for row and column to make sense. */
|
||||||
|
! if (j == 1 && tp[i] == 'R' && row_char == '2' && col >= 2)
|
||||||
|
{
|
||||||
|
! char *aw = NULL;
|
||||||
|
|
||||||
|
! LOG_TR("Received U7 status");
|
||||||
|
! u7_status = U7_GOT;
|
||||||
|
# ifdef FEAT_AUTOCMD
|
||||||
|
! did_cursorhold = TRUE;
|
||||||
|
# endif
|
||||||
|
! if (col == 2)
|
||||||
|
! aw = "single";
|
||||||
|
! else if (col == 3)
|
||||||
|
! aw = "double";
|
||||||
|
! if (aw != NULL && STRCMP(aw, p_ambw) != 0)
|
||||||
|
! {
|
||||||
|
! /* Setting the option causes a screen redraw. Do that
|
||||||
|
! * right away if possible, keeping any messages. */
|
||||||
|
! set_option_value((char_u *)"ambw", 0L, (char_u *)aw, 0);
|
||||||
|
! # ifdef DEBUG_TERMRESPONSE
|
||||||
|
{
|
||||||
|
! char buf[100];
|
||||||
|
! int r = redraw_asap(CLEAR);
|
||||||
|
|
||||||
|
! sprintf(buf, "set 'ambiwidth', redraw_asap(): %d",
|
||||||
|
! r);
|
||||||
|
! log_tr(buf);
|
||||||
|
! }
|
||||||
|
# else
|
||||||
|
! redraw_asap(CLEAR);
|
||||||
|
# endif
|
||||||
|
}
|
||||||
|
key_name[0] = (int)KS_EXTRA;
|
||||||
|
key_name[1] = (int)KE_IGNORE;
|
||||||
|
--- 4234,4275 ----
|
||||||
|
* u7_status is not "sent", it may be from a previous Vim that
|
||||||
|
* just exited. But not for <S-F3>, it sends something
|
||||||
|
* similar, check for row and column to make sense. */
|
||||||
|
! if (j == 1 && tp[i] == 'R')
|
||||||
|
{
|
||||||
|
! if (row_char == '2' && col >= 2)
|
||||||
|
! {
|
||||||
|
! char *aw = NULL;
|
||||||
|
|
||||||
|
! LOG_TR("Received U7 status");
|
||||||
|
! u7_status = U7_GOT;
|
||||||
|
# ifdef FEAT_AUTOCMD
|
||||||
|
! did_cursorhold = TRUE;
|
||||||
|
# endif
|
||||||
|
! if (col == 2)
|
||||||
|
! aw = "single";
|
||||||
|
! else if (col == 3)
|
||||||
|
! aw = "double";
|
||||||
|
! if (aw != NULL && STRCMP(aw, p_ambw) != 0)
|
||||||
|
{
|
||||||
|
! /* Setting the option causes a screen redraw. Do
|
||||||
|
! * that right away if possible, keeping any
|
||||||
|
! * messages. */
|
||||||
|
! set_option_value((char_u *)"ambw", 0L,
|
||||||
|
! (char_u *)aw, 0);
|
||||||
|
! # ifdef DEBUG_TERMRESPONSE
|
||||||
|
! {
|
||||||
|
! char buf[100];
|
||||||
|
! int r = redraw_asap(CLEAR);
|
||||||
|
|
||||||
|
! sprintf(buf,
|
||||||
|
! "set 'ambiwidth', redraw_asap(): %d",
|
||||||
|
! r);
|
||||||
|
! log_tr(buf);
|
||||||
|
! }
|
||||||
|
# else
|
||||||
|
! redraw_asap(CLEAR);
|
||||||
|
# endif
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
key_name[0] = (int)KS_EXTRA;
|
||||||
|
key_name[1] = (int)KE_IGNORE;
|
||||||
|
***************
|
||||||
|
*** 4563,4581 ****
|
||||||
|
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));
|
||||||
|
|
||||||
|
--- 4534,4552 ----
|
||||||
|
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));
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 4592,4598 ****
|
||||||
|
for (slen2 = slen; slen2 < len; slen2++)
|
||||||
|
{
|
||||||
|
if (tp[slen2] == 'M'
|
||||||
|
! || (key_name[0] == KS_SGR_MOUSE
|
||||||
|
&& tp[slen2] == 'm'))
|
||||||
|
{
|
||||||
|
cmd_complete = 1;
|
||||||
|
--- 4563,4569 ----
|
||||||
|
for (slen2 = slen; slen2 < len; slen2++)
|
||||||
|
{
|
||||||
|
if (tp[slen2] == 'M'
|
||||||
|
! || (key_name[0] == KS_SGR_MOUSE
|
||||||
|
&& tp[slen2] == 'm'))
|
||||||
|
{
|
||||||
|
cmd_complete = 1;
|
||||||
|
***************
|
||||||
|
*** 5769,5774 ****
|
||||||
|
--- 5740,5748 ----
|
||||||
|
* termcap codes from the terminal itself.
|
||||||
|
* We get them one by one to avoid a very long response string.
|
||||||
|
*/
|
||||||
|
+ static int xt_index_in = 0;
|
||||||
|
+ static int xt_index_out = 0;
|
||||||
|
+
|
||||||
|
static void
|
||||||
|
req_codes_from_term()
|
||||||
|
{
|
||||||
|
*** ../vim-7.4.388/src/proto/term.pro 2014-07-09 19:13:45.007701718 +0200
|
||||||
|
--- src/proto/term.pro 2014-07-30 17:04:40.791525930 +0200
|
||||||
|
***************
|
||||||
|
*** 34,41 ****
|
||||||
|
void settmode __ARGS((int tmode));
|
||||||
|
void starttermcap __ARGS((void));
|
||||||
|
void stoptermcap __ARGS((void));
|
||||||
|
- int did_request_esc_sequence __ARGS((void));
|
||||||
|
- void resume_get_esc_sequence __ARGS((void));
|
||||||
|
void may_req_termresponse __ARGS((void));
|
||||||
|
void may_req_ambiguous_char_width __ARGS((void));
|
||||||
|
int swapping_screen __ARGS((void));
|
||||||
|
--- 34,39 ----
|
||||||
|
*** ../vim-7.4.388/src/version.c 2014-07-30 16:44:17.503534723 +0200
|
||||||
|
--- src/version.c 2014-07-30 17:03:13.715526556 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 389,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
The only way the average employee can speak to an executive is by taking a
|
||||||
|
second job as a golf caddie.
|
||||||
|
(Scott Adams - The Dilbert principle)
|
||||||
|
|
||||||
|
/// 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 ///
|
51
7.4.390
Normal file
51
7.4.390
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.390
|
||||||
|
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.4.390
|
||||||
|
Problem: Advancing pointer over end of a string.
|
||||||
|
Solution: Init quote character to -1 instead of zero. (Dominique Pelle)
|
||||||
|
Files: src/misc1.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.389/src/misc1.c 2014-07-03 22:57:51.299862927 +0200
|
||||||
|
--- src/misc1.c 2014-08-06 12:43:33.191291602 +0200
|
||||||
|
***************
|
||||||
|
*** 5503,5509 ****
|
||||||
|
char_u *text;
|
||||||
|
{
|
||||||
|
char_u *s = skipwhite(text);
|
||||||
|
! int quote = 0;
|
||||||
|
|
||||||
|
if (*s == '\'' || *s == '"')
|
||||||
|
{
|
||||||
|
--- 5503,5509 ----
|
||||||
|
char_u *text;
|
||||||
|
{
|
||||||
|
char_u *s = skipwhite(text);
|
||||||
|
! int quote = -1;
|
||||||
|
|
||||||
|
if (*s == '\'' || *s == '"')
|
||||||
|
{
|
||||||
|
*** ../vim-7.4.389/src/version.c 2014-07-30 17:21:53.819518506 +0200
|
||||||
|
--- src/version.c 2014-08-06 12:44:31.643291182 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 390,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
A radioactive cat has eighteen half-lives.
|
||||||
|
|
||||||
|
/// 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 ///
|
118
7.4.391
Normal file
118
7.4.391
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.391
|
||||||
|
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.4.391
|
||||||
|
Problem: No 'cursorline' highlighting when the cursor is on a line with
|
||||||
|
diff highlighting. (Benjamin Fritz)
|
||||||
|
Solution: Combine the highlight attributes. (Christian Brabandt)
|
||||||
|
Files: src/screen.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.390/src/screen.c 2014-07-30 16:44:17.499534723 +0200
|
||||||
|
--- src/screen.c 2014-08-06 13:14:02.163278457 +0200
|
||||||
|
***************
|
||||||
|
*** 3702,3708 ****
|
||||||
|
--- 3702,3713 ----
|
||||||
|
char_attr = 0; /* was: hl_attr(HLF_AT); */
|
||||||
|
#ifdef FEAT_DIFF
|
||||||
|
if (diff_hlf != (hlf_T)0)
|
||||||
|
+ {
|
||||||
|
char_attr = hl_attr(diff_hlf);
|
||||||
|
+ if (wp->w_p_cul && lnum == wp->w_cursor.lnum)
|
||||||
|
+ char_attr = hl_combine_attr(char_attr,
|
||||||
|
+ hl_attr(HLF_CUL));
|
||||||
|
+ }
|
||||||
|
#endif
|
||||||
|
p_extra = NULL;
|
||||||
|
c_extra = ' ';
|
||||||
|
***************
|
||||||
|
*** 3753,3759 ****
|
||||||
|
#ifdef FEAT_SYN_HL
|
||||||
|
/* combine 'showbreak' with 'cursorline' */
|
||||||
|
if (wp->w_p_cul && lnum == wp->w_cursor.lnum)
|
||||||
|
! char_attr = hl_combine_attr(char_attr, HLF_CLN);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
# endif
|
||||||
|
--- 3758,3765 ----
|
||||||
|
#ifdef FEAT_SYN_HL
|
||||||
|
/* combine 'showbreak' with 'cursorline' */
|
||||||
|
if (wp->w_p_cul && lnum == wp->w_cursor.lnum)
|
||||||
|
! char_attr = hl_combine_attr(char_attr,
|
||||||
|
! hl_attr(HLF_CUL));
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
# endif
|
||||||
|
***************
|
||||||
|
*** 3931,3936 ****
|
||||||
|
--- 3937,3944 ----
|
||||||
|
&& n_extra == 0)
|
||||||
|
diff_hlf = HLF_CHD; /* changed line */
|
||||||
|
line_attr = hl_attr(diff_hlf);
|
||||||
|
+ if (wp->w_p_cul && lnum == wp->w_cursor.lnum)
|
||||||
|
+ line_attr = hl_combine_attr(line_attr, hl_attr(HLF_CUL));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
***************
|
||||||
|
*** 4729,4735 ****
|
||||||
|
--- 4737,4748 ----
|
||||||
|
{
|
||||||
|
diff_hlf = HLF_CHD;
|
||||||
|
if (attr == 0 || char_attr != attr)
|
||||||
|
+ {
|
||||||
|
char_attr = hl_attr(diff_hlf);
|
||||||
|
+ if (wp->w_p_cul && lnum == wp->w_cursor.lnum)
|
||||||
|
+ char_attr = hl_combine_attr(char_attr,
|
||||||
|
+ hl_attr(HLF_CUL));
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
# endif
|
||||||
|
}
|
||||||
|
***************
|
||||||
|
*** 10174,10182 ****
|
||||||
|
break;
|
||||||
|
screen_puts_len(NameBuff, len, 0, col,
|
||||||
|
#if defined(FEAT_SYN_HL)
|
||||||
|
! hl_combine_attr(attr, hl_attr(HLF_T))
|
||||||
|
#else
|
||||||
|
! attr
|
||||||
|
#endif
|
||||||
|
);
|
||||||
|
col += len;
|
||||||
|
--- 10187,10195 ----
|
||||||
|
break;
|
||||||
|
screen_puts_len(NameBuff, len, 0, col,
|
||||||
|
#if defined(FEAT_SYN_HL)
|
||||||
|
! hl_combine_attr(attr, hl_attr(HLF_T))
|
||||||
|
#else
|
||||||
|
! attr
|
||||||
|
#endif
|
||||||
|
);
|
||||||
|
col += len;
|
||||||
|
*** ../vim-7.4.390/src/version.c 2014-08-06 12:49:06.711289205 +0200
|
||||||
|
--- src/version.c 2014-08-06 13:19:19.135276179 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 391,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
It's totally unfair to suggest - as many have - that engineers are socially
|
||||||
|
inept. Engineers simply have different objectives when it comes to social
|
||||||
|
interaction.
|
||||||
|
(Scott Adams - The Dilbert principle)
|
||||||
|
|
||||||
|
/// 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 ///
|
86
7.4.392
Normal file
86
7.4.392
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.392
|
||||||
|
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.4.392
|
||||||
|
Problem: Not easy to detect type of command line window.
|
||||||
|
Solution: Add the getcmdwintype() function. (Jacob Niehus)
|
||||||
|
Files: src/eval.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.391/src/eval.c 2014-07-09 17:51:46.075801693 +0200
|
||||||
|
--- src/eval.c 2014-08-06 13:35:59.303268990 +0200
|
||||||
|
***************
|
||||||
|
*** 554,559 ****
|
||||||
|
--- 554,560 ----
|
||||||
|
static void f_getcmdline __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_getcmdpos __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_getcmdtype __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
+ static void f_getcmdwintype __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_getcwd __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_getfontname __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
static void f_getfperm __ARGS((typval_T *argvars, typval_T *rettv));
|
||||||
|
***************
|
||||||
|
*** 7984,7989 ****
|
||||||
|
--- 7985,7991 ----
|
||||||
|
{"getcmdline", 0, 0, f_getcmdline},
|
||||||
|
{"getcmdpos", 0, 0, f_getcmdpos},
|
||||||
|
{"getcmdtype", 0, 0, f_getcmdtype},
|
||||||
|
+ {"getcmdwintype", 0, 0, f_getcmdwintype},
|
||||||
|
{"getcurpos", 0, 0, f_getcurpos},
|
||||||
|
{"getcwd", 0, 0, f_getcwd},
|
||||||
|
{"getfontname", 0, 1, f_getfontname},
|
||||||
|
***************
|
||||||
|
*** 11503,11508 ****
|
||||||
|
--- 11505,11530 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
+ * "getcmdwintype()" function
|
||||||
|
+ */
|
||||||
|
+ static void
|
||||||
|
+ f_getcmdwintype(argvars, rettv)
|
||||||
|
+ typval_T *argvars UNUSED;
|
||||||
|
+ typval_T *rettv;
|
||||||
|
+ {
|
||||||
|
+ rettv->v_type = VAR_STRING;
|
||||||
|
+ rettv->vval.v_string = NULL;
|
||||||
|
+ #ifdef FEAT_CMDWIN
|
||||||
|
+ rettv->vval.v_string = alloc(2);
|
||||||
|
+ if (rettv->vval.v_string != NULL)
|
||||||
|
+ {
|
||||||
|
+ rettv->vval.v_string[0] = cmdwin_type;
|
||||||
|
+ rettv->vval.v_string[1] = NUL;
|
||||||
|
+ }
|
||||||
|
+ #endif
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
* "getcwd()" function
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
*** ../vim-7.4.391/src/version.c 2014-08-06 13:20:51.799275513 +0200
|
||||||
|
--- src/version.c 2014-08-06 13:34:42.903269539 +0200
|
||||||
|
***************
|
||||||
|
*** 736,737 ****
|
||||||
|
--- 736,739 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 392,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
I learned the customs and mannerisms of engineers by observing them, much the
|
||||||
|
way Jane Goodall learned about the great apes, but without the hassle of
|
||||||
|
grooming.
|
||||||
|
(Scott Adams - The Dilbert principle)
|
||||||
|
|
||||||
|
/// 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 ///
|
56
7.4.394
Normal file
56
7.4.394
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.394
|
||||||
|
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.4.394 (after 7.4.393)
|
||||||
|
Problem: When using DirectX last italic character is incomplete.
|
||||||
|
Solution: Add one to the number of cells. (Ken Takata)
|
||||||
|
Files: src/gui_w32.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.393/src/gui_w32.c 2014-08-06 14:52:05.043236174 +0200
|
||||||
|
--- src/gui_w32.c 2014-08-06 16:45:56.927187071 +0200
|
||||||
|
***************
|
||||||
|
*** 2590,2597 ****
|
||||||
|
#if defined(FEAT_DIRECTX)
|
||||||
|
if (IS_ENABLE_DIRECTX() && font_is_ttf_or_vector)
|
||||||
|
{
|
||||||
|
DWriteContext_DrawText(s_dwc, s_hdc, unicodebuf, wlen,
|
||||||
|
! TEXT_X(col), TEXT_Y(row), FILL_X(cells), FILL_Y(1),
|
||||||
|
gui.char_width, gui.currFgColor);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
--- 2590,2598 ----
|
||||||
|
#if defined(FEAT_DIRECTX)
|
||||||
|
if (IS_ENABLE_DIRECTX() && font_is_ttf_or_vector)
|
||||||
|
{
|
||||||
|
+ /* Add one to "cells" for italics. */
|
||||||
|
DWriteContext_DrawText(s_dwc, s_hdc, unicodebuf, wlen,
|
||||||
|
! TEXT_X(col), TEXT_Y(row), FILL_X(cells + 1), FILL_Y(1),
|
||||||
|
gui.char_width, gui.currFgColor);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
*** ../vim-7.4.393/src/version.c 2014-08-06 14:52:05.047236174 +0200
|
||||||
|
--- src/version.c 2014-08-06 16:46:54.279186658 +0200
|
||||||
|
***************
|
||||||
|
*** 743,744 ****
|
||||||
|
--- 743,746 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 394,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
The average life of an organization chart is six months. You can safely
|
||||||
|
ignore any order from your boss that would take six months to complete.
|
||||||
|
(Scott Adams - The Dilbert principle)
|
||||||
|
|
||||||
|
/// 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 ///
|
99
7.4.395
Normal file
99
7.4.395
Normal file
@ -0,0 +1,99 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.395
|
||||||
|
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.4.395 (after 7.4.355)
|
||||||
|
Problem: C indent is wrong below an if with wrapped condition followed by
|
||||||
|
curly braces. (Trevor Powell)
|
||||||
|
Solution: Make a copy of tryposBrace.
|
||||||
|
Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.394/src/misc1.c 2014-08-06 12:49:06.711289205 +0200
|
||||||
|
--- src/misc1.c 2014-08-06 17:35:45.003165594 +0200
|
||||||
|
***************
|
||||||
|
*** 6995,7000 ****
|
||||||
|
--- 6995,7001 ----
|
||||||
|
char_u *linecopy;
|
||||||
|
pos_T *trypos;
|
||||||
|
pos_T *tryposBrace = NULL;
|
||||||
|
+ pos_T tryposBraceCopy;
|
||||||
|
pos_T our_paren_pos;
|
||||||
|
char_u *start;
|
||||||
|
int start_brace;
|
||||||
|
***************
|
||||||
|
*** 7532,7538 ****
|
||||||
|
--- 7533,7543 ----
|
||||||
|
/*
|
||||||
|
* We are inside braces, there is a { before this line at the position
|
||||||
|
* stored in tryposBrace.
|
||||||
|
+ * Make a copy of tryposBrace, it may point to pos_copy inside
|
||||||
|
+ * find_start_brace(), which may be changed somewhere.
|
||||||
|
*/
|
||||||
|
+ tryposBraceCopy = *tryposBrace;
|
||||||
|
+ tryposBrace = &tryposBraceCopy;
|
||||||
|
trypos = tryposBrace;
|
||||||
|
ourscope = trypos->lnum;
|
||||||
|
start = ml_get(ourscope);
|
||||||
|
*** ../vim-7.4.394/src/testdir/test3.in 2014-07-03 22:57:51.299862927 +0200
|
||||||
|
--- src/testdir/test3.in 2014-08-06 17:19:41.099172522 +0200
|
||||||
|
***************
|
||||||
|
*** 464,469 ****
|
||||||
|
--- 464,477 ----
|
||||||
|
asdfasdf
|
||||||
|
}
|
||||||
|
|
||||||
|
+ {
|
||||||
|
+ for ( int i = 0;
|
||||||
|
+ i < 10; i++ )
|
||||||
|
+ {
|
||||||
|
+ }
|
||||||
|
+ i = 0;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
class bob
|
||||||
|
{
|
||||||
|
int foo() {return 1;}
|
||||||
|
*** ../vim-7.4.394/src/testdir/test3.ok 2014-07-03 22:57:51.299862927 +0200
|
||||||
|
--- src/testdir/test3.ok 2014-08-06 17:20:11.867172301 +0200
|
||||||
|
***************
|
||||||
|
*** 452,457 ****
|
||||||
|
--- 452,465 ----
|
||||||
|
asdfasdf
|
||||||
|
}
|
||||||
|
|
||||||
|
+ {
|
||||||
|
+ for ( int i = 0;
|
||||||
|
+ i < 10; i++ )
|
||||||
|
+ {
|
||||||
|
+ }
|
||||||
|
+ i = 0;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
class bob
|
||||||
|
{
|
||||||
|
int foo() {return 1;}
|
||||||
|
*** ../vim-7.4.394/src/version.c 2014-08-06 16:49:51.203185387 +0200
|
||||||
|
--- src/version.c 2014-08-06 17:43:44.243162150 +0200
|
||||||
|
***************
|
||||||
|
*** 743,744 ****
|
||||||
|
--- 743,746 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 395,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
An operatingsystem is just a name you give to the rest of bloating
|
||||||
|
idiosyncratic machine-based-features you left out of your editor.
|
||||||
|
(author unknown)
|
||||||
|
|
||||||
|
/// 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 ///
|
291
7.4.396
Normal file
291
7.4.396
Normal file
@ -0,0 +1,291 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.396
|
||||||
|
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.4.396
|
||||||
|
Problem: When 'clipboard' is "unnamed", :g/pat/d is very slow. (Praful)
|
||||||
|
Solution: Only set the clipboard after the last delete. (Christian Brabandt)
|
||||||
|
Files: src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, src/globals.h,
|
||||||
|
src/ops.c, src/proto/ui.pro, src/ui.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.395/src/ex_cmds.c 2014-07-09 21:17:59.755550204 +0200
|
||||||
|
--- src/ex_cmds.c 2014-08-06 18:06:37.931152276 +0200
|
||||||
|
***************
|
||||||
|
*** 5514,5520 ****
|
||||||
|
--- 5514,5528 ----
|
||||||
|
smsg((char_u *)_("Pattern not found: %s"), pat);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
+ {
|
||||||
|
+ #ifdef FEAT_CLIPBOARD
|
||||||
|
+ start_global_changes();
|
||||||
|
+ #endif
|
||||||
|
global_exe(cmd);
|
||||||
|
+ #ifdef FEAT_CLIPBOARD
|
||||||
|
+ end_global_changes();
|
||||||
|
+ #endif
|
||||||
|
+ }
|
||||||
|
|
||||||
|
ml_clearmarked(); /* clear rest of the marks */
|
||||||
|
vim_regfree(regmatch.regprog);
|
||||||
|
*** ../vim-7.4.395/src/ex_cmds2.c 2014-04-05 19:44:36.903160723 +0200
|
||||||
|
--- src/ex_cmds2.c 2014-08-06 18:05:07.563152926 +0200
|
||||||
|
***************
|
||||||
|
*** 2464,2469 ****
|
||||||
|
--- 2464,2472 ----
|
||||||
|
* great speed improvement. */
|
||||||
|
save_ei = au_event_disable(",Syntax");
|
||||||
|
#endif
|
||||||
|
+ #ifdef FEAT_CLIPBOARD
|
||||||
|
+ start_global_changes();
|
||||||
|
+ #endif
|
||||||
|
|
||||||
|
if (eap->cmdidx == CMD_windo
|
||||||
|
|| eap->cmdidx == CMD_tabdo
|
||||||
|
***************
|
||||||
|
*** 2591,2596 ****
|
||||||
|
--- 2594,2602 ----
|
||||||
|
curbuf->b_fname, TRUE, curbuf);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
+ #ifdef FEAT_CLIPBOARD
|
||||||
|
+ end_global_changes();
|
||||||
|
+ #endif
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
***************
|
||||||
|
*** 2750,2757 ****
|
||||||
|
* used.
|
||||||
|
* Returns OK when at least one match found, FAIL otherwise.
|
||||||
|
*
|
||||||
|
! * If "name" is NULL calls callback for each entry in runtimepath. Cookie is
|
||||||
|
! * passed by reference in this case, setting it to NULL indicates that callback
|
||||||
|
* has done its job.
|
||||||
|
*/
|
||||||
|
int
|
||||||
|
--- 2756,2763 ----
|
||||||
|
* used.
|
||||||
|
* Returns OK when at least one match found, FAIL otherwise.
|
||||||
|
*
|
||||||
|
! * If "name" is NULL calls callback for each entry in runtimepath. Cookie is
|
||||||
|
! * passed by reference in this case, setting it to NULL indicates that callback
|
||||||
|
* has done its job.
|
||||||
|
*/
|
||||||
|
int
|
||||||
|
*** ../vim-7.4.395/src/ex_docmd.c 2014-06-17 17:48:21.780628008 +0200
|
||||||
|
--- src/ex_docmd.c 2014-08-06 18:05:07.563152926 +0200
|
||||||
|
***************
|
||||||
|
*** 11534,11539 ****
|
||||||
|
--- 11534,11543 ----
|
||||||
|
{
|
||||||
|
linenr_T lnum;
|
||||||
|
|
||||||
|
+ #ifdef FEAT_CLIPBOARD
|
||||||
|
+ start_global_changes();
|
||||||
|
+ #endif
|
||||||
|
+
|
||||||
|
/* First set the marks for all lines closed/open. */
|
||||||
|
for (lnum = eap->line1; lnum <= eap->line2; ++lnum)
|
||||||
|
if (hasFolding(lnum, NULL, NULL) == (eap->cmdidx == CMD_folddoclosed))
|
||||||
|
***************
|
||||||
|
*** 11542,11546 ****
|
||||||
|
--- 11546,11553 ----
|
||||||
|
/* Execute the command on the marked lines. */
|
||||||
|
global_exe(eap->arg);
|
||||||
|
ml_clearmarked(); /* clear rest of the marks */
|
||||||
|
+ #ifdef FEAT_CLIPBOARD
|
||||||
|
+ end_global_changes();
|
||||||
|
+ #endif
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
*** ../vim-7.4.395/src/globals.h 2014-07-30 17:21:53.815518506 +0200
|
||||||
|
--- src/globals.h 2014-08-06 18:05:07.563152926 +0200
|
||||||
|
***************
|
||||||
|
*** 533,538 ****
|
||||||
|
--- 533,540 ----
|
||||||
|
EXTERN int clip_autoselectml INIT(= FALSE);
|
||||||
|
EXTERN int clip_html INIT(= FALSE);
|
||||||
|
EXTERN regprog_T *clip_exclude_prog INIT(= NULL);
|
||||||
|
+ EXTERN int clip_did_set_selection INIT(= TRUE);
|
||||||
|
+ EXTERN int clip_unnamed_saved INIT(= 0);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
*** ../vim-7.4.395/src/ops.c 2014-06-25 14:39:35.106348584 +0200
|
||||||
|
--- src/ops.c 2014-08-06 18:05:07.563152926 +0200
|
||||||
|
***************
|
||||||
|
*** 1597,1605 ****
|
||||||
|
{
|
||||||
|
/* If no reg. specified, and "unnamed" or "unnamedplus" is in 'clipboard',
|
||||||
|
* use '*' or '+' reg, respectively. "unnamedplus" prevails. */
|
||||||
|
! if (*rp == 0 && clip_unnamed != 0)
|
||||||
|
! *rp = ((clip_unnamed & CLIP_UNNAMED_PLUS) && clip_plus.available)
|
||||||
|
? '+' : '*';
|
||||||
|
if (!clip_star.available && *rp == '*')
|
||||||
|
*rp = 0;
|
||||||
|
if (!clip_plus.available && *rp == '+')
|
||||||
|
--- 1597,1611 ----
|
||||||
|
{
|
||||||
|
/* If no reg. specified, and "unnamed" or "unnamedplus" is in 'clipboard',
|
||||||
|
* use '*' or '+' reg, respectively. "unnamedplus" prevails. */
|
||||||
|
! if (*rp == 0 && (clip_unnamed != 0 || clip_unnamed_saved != 0))
|
||||||
|
! {
|
||||||
|
! if (clip_unnamed != 0)
|
||||||
|
! *rp = ((clip_unnamed & CLIP_UNNAMED_PLUS) && clip_plus.available)
|
||||||
|
! ? '+' : '*';
|
||||||
|
! else
|
||||||
|
! *rp = ((clip_unnamed_saved & CLIP_UNNAMED_PLUS) && clip_plus.available)
|
||||||
|
? '+' : '*';
|
||||||
|
+ }
|
||||||
|
if (!clip_star.available && *rp == '*')
|
||||||
|
*rp = 0;
|
||||||
|
if (!clip_plus.available && *rp == '+')
|
||||||
|
***************
|
||||||
|
*** 3203,3209 ****
|
||||||
|
if (clip_star.available
|
||||||
|
&& (curr == &(y_regs[STAR_REGISTER])
|
||||||
|
|| (!deleting && oap->regname == 0
|
||||||
|
! && (clip_unnamed & CLIP_UNNAMED))))
|
||||||
|
{
|
||||||
|
if (curr != &(y_regs[STAR_REGISTER]))
|
||||||
|
/* Copy the text from register 0 to the clipboard register. */
|
||||||
|
--- 3209,3215 ----
|
||||||
|
if (clip_star.available
|
||||||
|
&& (curr == &(y_regs[STAR_REGISTER])
|
||||||
|
|| (!deleting && oap->regname == 0
|
||||||
|
! && ((clip_unnamed | clip_unnamed_saved) & CLIP_UNNAMED))))
|
||||||
|
{
|
||||||
|
if (curr != &(y_regs[STAR_REGISTER]))
|
||||||
|
/* Copy the text from register 0 to the clipboard register. */
|
||||||
|
***************
|
||||||
|
*** 3224,3230 ****
|
||||||
|
if (clip_plus.available
|
||||||
|
&& (curr == &(y_regs[PLUS_REGISTER])
|
||||||
|
|| (!deleting && oap->regname == 0
|
||||||
|
! && (clip_unnamed & CLIP_UNNAMED_PLUS))))
|
||||||
|
{
|
||||||
|
if (curr != &(y_regs[PLUS_REGISTER]))
|
||||||
|
/* Copy the text from register 0 to the clipboard register. */
|
||||||
|
--- 3230,3237 ----
|
||||||
|
if (clip_plus.available
|
||||||
|
&& (curr == &(y_regs[PLUS_REGISTER])
|
||||||
|
|| (!deleting && oap->regname == 0
|
||||||
|
! && ((clip_unnamed | clip_unnamed_saved) &
|
||||||
|
! CLIP_UNNAMED_PLUS))))
|
||||||
|
{
|
||||||
|
if (curr != &(y_regs[PLUS_REGISTER]))
|
||||||
|
/* Copy the text from register 0 to the clipboard register. */
|
||||||
|
*** ../vim-7.4.395/src/proto/ui.pro 2013-08-10 13:37:29.000000000 +0200
|
||||||
|
--- src/proto/ui.pro 2014-08-06 18:05:07.563152926 +0200
|
||||||
|
***************
|
||||||
|
*** 14,19 ****
|
||||||
|
--- 14,21 ----
|
||||||
|
void clip_update_selection __ARGS((VimClipboard *clip));
|
||||||
|
void clip_own_selection __ARGS((VimClipboard *cbd));
|
||||||
|
void clip_lose_selection __ARGS((VimClipboard *cbd));
|
||||||
|
+ void start_global_changes __ARGS((void));
|
||||||
|
+ void end_global_changes __ARGS((void));
|
||||||
|
void clip_auto_select __ARGS((void));
|
||||||
|
int clip_isautosel_star __ARGS((void));
|
||||||
|
int clip_isautosel_plus __ARGS((void));
|
||||||
|
*** ../vim-7.4.395/src/ui.c 2014-06-25 14:39:35.114348584 +0200
|
||||||
|
--- src/ui.c 2014-08-06 18:13:13.475149434 +0200
|
||||||
|
***************
|
||||||
|
*** 558,563 ****
|
||||||
|
--- 558,608 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
+ * Save and restore clip_unnamed before doing possibly many changes. This
|
||||||
|
+ * prevents accessing the clipboard very often which might slow down Vim
|
||||||
|
+ * considerably.
|
||||||
|
+ */
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Save clip_unnamed and reset it.
|
||||||
|
+ */
|
||||||
|
+ void
|
||||||
|
+ start_global_changes()
|
||||||
|
+ {
|
||||||
|
+ clip_unnamed_saved = clip_unnamed;
|
||||||
|
+
|
||||||
|
+ if (clip_did_set_selection)
|
||||||
|
+ {
|
||||||
|
+ clip_unnamed = FALSE;
|
||||||
|
+ clip_did_set_selection = FALSE;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Restore clip_unnamed and set the selection when needed.
|
||||||
|
+ */
|
||||||
|
+ void
|
||||||
|
+ end_global_changes()
|
||||||
|
+ {
|
||||||
|
+ if (!clip_did_set_selection)
|
||||||
|
+ {
|
||||||
|
+ clip_did_set_selection = TRUE;
|
||||||
|
+ clip_unnamed = clip_unnamed_saved;
|
||||||
|
+ if (clip_unnamed & CLIP_UNNAMED)
|
||||||
|
+ {
|
||||||
|
+ clip_own_selection(&clip_star);
|
||||||
|
+ clip_gen_set_selection(&clip_star);
|
||||||
|
+ }
|
||||||
|
+ if (clip_unnamed & CLIP_UNNAMED_PLUS)
|
||||||
|
+ {
|
||||||
|
+ clip_own_selection(&clip_plus);
|
||||||
|
+ clip_gen_set_selection(&clip_plus);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ clip_unnamed_saved = FALSE;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
* Called when Visual mode is ended: update the selection.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
***************
|
||||||
|
*** 1428,1433 ****
|
||||||
|
--- 1473,1487 ----
|
||||||
|
clip_gen_set_selection(cbd)
|
||||||
|
VimClipboard *cbd;
|
||||||
|
{
|
||||||
|
+ if (!clip_did_set_selection)
|
||||||
|
+ {
|
||||||
|
+ /* Updating postponed, so that accessing the system clipboard won't
|
||||||
|
+ * hang Vim when accessing it many times (e.g. on a :g comand). */
|
||||||
|
+ if (cbd == &clip_plus && (clip_unnamed_saved & CLIP_UNNAMED_PLUS))
|
||||||
|
+ return;
|
||||||
|
+ else if (cbd == &clip_star && (clip_unnamed_saved & CLIP_UNNAMED))
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
#ifdef FEAT_XCLIPBOARD
|
||||||
|
# ifdef FEAT_GUI
|
||||||
|
if (gui.in_use)
|
||||||
|
*** ../vim-7.4.395/src/version.c 2014-08-06 17:44:09.867161966 +0200
|
||||||
|
--- src/version.c 2014-08-06 18:04:47.359153071 +0200
|
||||||
|
***************
|
||||||
|
*** 743,744 ****
|
||||||
|
--- 743,746 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 396,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
You have heard the saying that if you put a thousand monkeys in a room with a
|
||||||
|
thousand typewriters and waited long enough, eventually you would have a room
|
||||||
|
full of dead monkeys.
|
||||||
|
(Scott Adams - The Dilbert principle)
|
||||||
|
|
||||||
|
/// 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 ///
|
150
7.4.397
Normal file
150
7.4.397
Normal file
@ -0,0 +1,150 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.397
|
||||||
|
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.4.397
|
||||||
|
Problem: Matchparen only uses the topmost syntax item.
|
||||||
|
Solution: Go through the syntax stack to find items. (James McCoy)
|
||||||
|
Also use getcurpos() when possible.
|
||||||
|
Files: runtime/plugin/matchparen.vim
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.396/runtime/plugin/matchparen.vim 2014-06-17 17:48:21.772628007 +0200
|
||||||
|
--- runtime/plugin/matchparen.vim 2014-08-06 19:02:04.967128364 +0200
|
||||||
|
***************
|
||||||
|
*** 1,6 ****
|
||||||
|
" Vim plugin for showing matching parens
|
||||||
|
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
|
! " Last Change: 2014 Jun 17
|
||||||
|
|
||||||
|
" Exit quickly when:
|
||||||
|
" - this plugin was already loaded (or disabled)
|
||||||
|
--- 1,6 ----
|
||||||
|
" Vim plugin for showing matching parens
|
||||||
|
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
|
! " Last Change: 2014 Jul 19
|
||||||
|
|
||||||
|
" Exit quickly when:
|
||||||
|
" - this plugin was already loaded (or disabled)
|
||||||
|
***************
|
||||||
|
*** 54,67 ****
|
||||||
|
let c_col = col('.')
|
||||||
|
let before = 0
|
||||||
|
|
||||||
|
! let c = getline(c_lnum)[c_col - 1]
|
||||||
|
let plist = split(&matchpairs, '.\zs[:,]')
|
||||||
|
let i = index(plist, c)
|
||||||
|
if i < 0
|
||||||
|
" not found, in Insert mode try character before the cursor
|
||||||
|
if c_col > 1 && (mode() == 'i' || mode() == 'R')
|
||||||
|
let before = 1
|
||||||
|
! let c = getline(c_lnum)[c_col - 2]
|
||||||
|
let i = index(plist, c)
|
||||||
|
endif
|
||||||
|
if i < 0
|
||||||
|
--- 54,68 ----
|
||||||
|
let c_col = col('.')
|
||||||
|
let before = 0
|
||||||
|
|
||||||
|
! let text = getline(c_lnum)
|
||||||
|
! let c = text[c_col - 1]
|
||||||
|
let plist = split(&matchpairs, '.\zs[:,]')
|
||||||
|
let i = index(plist, c)
|
||||||
|
if i < 0
|
||||||
|
" not found, in Insert mode try character before the cursor
|
||||||
|
if c_col > 1 && (mode() == 'i' || mode() == 'R')
|
||||||
|
let before = 1
|
||||||
|
! let c = text[c_col - 2]
|
||||||
|
let i = index(plist, c)
|
||||||
|
endif
|
||||||
|
if i < 0
|
||||||
|
***************
|
||||||
|
*** 87,100 ****
|
||||||
|
" Find the match. When it was just before the cursor move it there for a
|
||||||
|
" moment.
|
||||||
|
if before > 0
|
||||||
|
! let save_cursor = winsaveview()
|
||||||
|
call cursor(c_lnum, c_col - before)
|
||||||
|
endif
|
||||||
|
|
||||||
|
! " When not in a string or comment ignore matches inside them.
|
||||||
|
" We match "escape" for special items, such as lispEscapeSpecial.
|
||||||
|
! let s_skip ='synIDattr(synID(line("."), col("."), 0), "name") ' .
|
||||||
|
! \ '=~? "string\\|character\\|singlequote\\|escape\\|comment"'
|
||||||
|
execute 'if' s_skip '| let s_skip = 0 | endif'
|
||||||
|
|
||||||
|
" Limit the search to lines visible in the window.
|
||||||
|
--- 88,114 ----
|
||||||
|
" Find the match. When it was just before the cursor move it there for a
|
||||||
|
" moment.
|
||||||
|
if before > 0
|
||||||
|
! let has_getcurpos = exists("*getcurpos")
|
||||||
|
! if has_getcurpos
|
||||||
|
! " getcurpos() is more efficient but doesn't exist before 7.4.313.
|
||||||
|
! let save_cursor = getcurpos()
|
||||||
|
! else
|
||||||
|
! let save_cursor = winsaveview()
|
||||||
|
! endif
|
||||||
|
call cursor(c_lnum, c_col - before)
|
||||||
|
endif
|
||||||
|
|
||||||
|
! " Build an expression that detects whether the current cursor position is in
|
||||||
|
! " certain syntax types (string, comment, etc.), for use as searchpairpos()'s
|
||||||
|
! " skip argument.
|
||||||
|
" We match "escape" for special items, such as lispEscapeSpecial.
|
||||||
|
! let s_skip = '!empty(filter(map(synstack(line("."), col(".")), ''synIDattr(v:val, "name")''), ' .
|
||||||
|
! \ '''v:val =~? "string\\|character\\|singlequote\\|escape\\|comment"''))'
|
||||||
|
! " If executing the expression determines that the cursor is currently in
|
||||||
|
! " one of the syntax types, then we want searchpairpos() to find the pair
|
||||||
|
! " within those syntax types (i.e., not skip). Otherwise, the cursor is
|
||||||
|
! " outside of the syntax types and s_skip should keep its value so we skip any
|
||||||
|
! " matching pair inside the syntax types.
|
||||||
|
execute 'if' s_skip '| let s_skip = 0 | endif'
|
||||||
|
|
||||||
|
" Limit the search to lines visible in the window.
|
||||||
|
***************
|
||||||
|
*** 147,153 ****
|
||||||
|
endtry
|
||||||
|
|
||||||
|
if before > 0
|
||||||
|
! call winrestview(save_cursor)
|
||||||
|
endif
|
||||||
|
|
||||||
|
" If a match is found setup match highlighting.
|
||||||
|
--- 161,171 ----
|
||||||
|
endtry
|
||||||
|
|
||||||
|
if before > 0
|
||||||
|
! if has_getcurpos
|
||||||
|
! call setpos('.', save_cursor)
|
||||||
|
! else
|
||||||
|
! call winrestview(save_cursor)
|
||||||
|
! endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
" If a match is found setup match highlighting.
|
||||||
|
*** ../vim-7.4.396/src/version.c 2014-08-06 18:17:03.475147780 +0200
|
||||||
|
--- src/version.c 2014-08-06 19:06:44.627126354 +0200
|
||||||
|
***************
|
||||||
|
*** 743,744 ****
|
||||||
|
--- 743,746 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 397,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Often you're less important than your furniture. If you think about it, you
|
||||||
|
can get fired but your furniture stays behind, gainfully employed at the
|
||||||
|
company that didn't need _you_ anymore.
|
||||||
|
(Scott Adams - The Dilbert principle)
|
||||||
|
|
||||||
|
/// 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.4.398
Normal file
52
7.4.398
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.398
|
||||||
|
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.4.398 (after 7.4.393)
|
||||||
|
Problem: Gcc error for the argument of InterlockedIncrement() and
|
||||||
|
InterlockedDecrement(). (Axel Bender)
|
||||||
|
Solution: Remove "unsigned" from the cRefCount_ declaration.
|
||||||
|
Files: src/gui_dwrite.cpp
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.397/src/gui_dwrite.cpp 2014-08-06 14:52:05.043236174 +0200
|
||||||
|
--- src/gui_dwrite.cpp 2014-08-06 18:39:01.611138306 +0200
|
||||||
|
***************
|
||||||
|
*** 377,383 ****
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
! unsigned long cRefCount_;
|
||||||
|
IDWriteBitmapRenderTarget* pRenderTarget_;
|
||||||
|
IDWriteRenderingParams* pRenderingParams_;
|
||||||
|
};
|
||||||
|
--- 377,383 ----
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
! long cRefCount_;
|
||||||
|
IDWriteBitmapRenderTarget* pRenderTarget_;
|
||||||
|
IDWriteRenderingParams* pRenderingParams_;
|
||||||
|
};
|
||||||
|
*** ../vim-7.4.397/src/version.c 2014-08-06 19:08:33.563125571 +0200
|
||||||
|
--- src/version.c 2014-08-07 13:54:40.162639943 +0200
|
||||||
|
***************
|
||||||
|
*** 743,744 ****
|
||||||
|
--- 743,746 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 398,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
A)bort, R)etry, D)o it right this time
|
||||||
|
|
||||||
|
/// 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 ///
|
69
7.4.400
Normal file
69
7.4.400
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.400
|
||||||
|
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.4.400
|
||||||
|
Problem: List of distributed files is incomplete.
|
||||||
|
Solution: Add recently added files.
|
||||||
|
Files: Filelist
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.399/Filelist 2014-05-13 13:52:34.817605451 +0200
|
||||||
|
--- Filelist 2014-08-10 13:43:31.612781775 +0200
|
||||||
|
***************
|
||||||
|
*** 11,16 ****
|
||||||
|
--- 11,18 ----
|
||||||
|
src/blowfish.c \
|
||||||
|
src/buffer.c \
|
||||||
|
src/charset.c \
|
||||||
|
+ src/crypt.c \
|
||||||
|
+ src/crypt_zip.c \
|
||||||
|
src/diff.c \
|
||||||
|
src/digraph.c \
|
||||||
|
src/edit.c \
|
||||||
|
***************
|
||||||
|
*** 103,108 ****
|
||||||
|
--- 105,112 ----
|
||||||
|
src/proto/blowfish.pro \
|
||||||
|
src/proto/buffer.pro \
|
||||||
|
src/proto/charset.pro \
|
||||||
|
+ src/proto/crypt.pro \
|
||||||
|
+ src/proto/crypt_zip.pro \
|
||||||
|
src/proto/diff.pro \
|
||||||
|
src/proto/digraph.pro \
|
||||||
|
src/proto/edit.pro \
|
||||||
|
***************
|
||||||
|
*** 289,294 ****
|
||||||
|
--- 293,300 ----
|
||||||
|
src/dosinst.h \
|
||||||
|
src/glbl_ime.cpp \
|
||||||
|
src/glbl_ime.h \
|
||||||
|
+ src/gui_dwrite.cpp \
|
||||||
|
+ src/gui_dwrite.h \
|
||||||
|
src/gui_w16.c \
|
||||||
|
src/gui_w32.c \
|
||||||
|
src/gui_w48.c \
|
||||||
|
*** ../vim-7.4.399/src/version.c 2014-08-10 13:34:59.064785459 +0200
|
||||||
|
--- src/version.c 2014-08-10 13:45:45.800780810 +0200
|
||||||
|
***************
|
||||||
|
*** 743,744 ****
|
||||||
|
--- 743,746 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 400,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
hundred-and-one symptoms of being an internet addict:
|
||||||
|
17. You turn on your intercom when leaving the room so you can hear if new
|
||||||
|
e-mail arrives.
|
||||||
|
|
||||||
|
/// 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 ///
|
357
7.4.401
Normal file
357
7.4.401
Normal file
@ -0,0 +1,357 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.401
|
||||||
|
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.4.401 (after 7.4.399)
|
||||||
|
Problem: Can't build on MS-Windows.
|
||||||
|
Solution: Include the new files in all the Makefiles.
|
||||||
|
Files: src/Make_bc3.mak, src/Make_bc5.mak, src/Make_cyg.mak,
|
||||||
|
src/Make_dice.mak, src/Make_djg.mak, src/Make_ivc.mak,
|
||||||
|
src/Make_manx.mak, src/Make_ming.mak, src/Make_morph.mak,
|
||||||
|
src/Make_mvc.mak, src/Make_os2.mak, src/Make_sas.mak,
|
||||||
|
Make_vms.mms
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.400/src/Make_bc3.mak 2010-05-18 20:27:58.000000000 +0200
|
||||||
|
--- src/Make_bc3.mak 2014-08-10 16:20:20.068714153 +0200
|
||||||
|
***************
|
||||||
|
*** 54,59 ****
|
||||||
|
--- 54,61 ----
|
||||||
|
blowfish.obj \
|
||||||
|
buffer.obj \
|
||||||
|
charset.obj \
|
||||||
|
+ crypt.obj \
|
||||||
|
+ crypt_zip.obj \
|
||||||
|
diff.obj \
|
||||||
|
digraph.obj \
|
||||||
|
edit.obj \
|
||||||
|
*** ../vim-7.4.400/src/Make_bc5.mak 2014-01-10 18:16:00.000000000 +0100
|
||||||
|
--- src/Make_bc5.mak 2014-08-10 16:20:39.684714012 +0200
|
||||||
|
***************
|
||||||
|
*** 580,585 ****
|
||||||
|
--- 580,587 ----
|
||||||
|
$(OBJDIR)\blowfish.obj \
|
||||||
|
$(OBJDIR)\buffer.obj \
|
||||||
|
$(OBJDIR)\charset.obj \
|
||||||
|
+ $(OBJDIR)\crypt.obj \
|
||||||
|
+ $(OBJDIR)\crypt_zip.obj \
|
||||||
|
$(OBJDIR)\diff.obj \
|
||||||
|
$(OBJDIR)\digraph.obj \
|
||||||
|
$(OBJDIR)\edit.obj \
|
||||||
|
*** ../vim-7.4.400/src/Make_cyg.mak 2014-08-06 14:52:05.039236174 +0200
|
||||||
|
--- src/Make_cyg.mak 2014-08-10 16:30:48.656709635 +0200
|
||||||
|
***************
|
||||||
|
*** 1,6 ****
|
||||||
|
#
|
||||||
|
# Makefile for VIM on Win32, using Cygnus gcc
|
||||||
|
! # Last updated by Dan Sharp. Last Change: 2013 Dec 11
|
||||||
|
#
|
||||||
|
# Also read INSTALLpc.txt!
|
||||||
|
#
|
||||||
|
--- 1,7 ----
|
||||||
|
#
|
||||||
|
# Makefile for VIM on Win32, using Cygnus gcc
|
||||||
|
! # Updated by Dan Sharp.
|
||||||
|
! # Last Change: 2014 Aug 10
|
||||||
|
#
|
||||||
|
# Also read INSTALLpc.txt!
|
||||||
|
#
|
||||||
|
***************
|
||||||
|
*** 546,551 ****
|
||||||
|
--- 547,554 ----
|
||||||
|
$(OUTDIR)/blowfish.o \
|
||||||
|
$(OUTDIR)/buffer.o \
|
||||||
|
$(OUTDIR)/charset.o \
|
||||||
|
+ $(OUTDIR)/crypt.o \
|
||||||
|
+ $(OUTDIR)/crypt_zip.o \
|
||||||
|
$(OUTDIR)/diff.o \
|
||||||
|
$(OUTDIR)/digraph.o \
|
||||||
|
$(OUTDIR)/edit.o \
|
||||||
|
*** ../vim-7.4.400/src/Make_dice.mak 2010-05-18 20:29:00.000000000 +0200
|
||||||
|
--- src/Make_dice.mak 2014-08-10 16:21:53.740713479 +0200
|
||||||
|
***************
|
||||||
|
*** 29,34 ****
|
||||||
|
--- 29,36 ----
|
||||||
|
blowfish.c \
|
||||||
|
buffer.c \
|
||||||
|
charset.c \
|
||||||
|
+ crypt.c \
|
||||||
|
+ crypt_zip.c \
|
||||||
|
diff.c \
|
||||||
|
digraph.c \
|
||||||
|
edit.c \
|
||||||
|
***************
|
||||||
|
*** 75,80 ****
|
||||||
|
--- 77,84 ----
|
||||||
|
OBJ = o/blowfish.o \
|
||||||
|
o/buffer.o \
|
||||||
|
o/charset.o \
|
||||||
|
+ o/crypt.o \
|
||||||
|
+ o/crypt_zip.o \
|
||||||
|
o/diff.o \
|
||||||
|
o/digraph.o \
|
||||||
|
o/edit.o \
|
||||||
|
***************
|
||||||
|
*** 143,148 ****
|
||||||
|
--- 147,156 ----
|
||||||
|
|
||||||
|
o/charset.o: charset.c $(SYMS)
|
||||||
|
|
||||||
|
+ o/crypt.o: crypt.c $(SYMS)
|
||||||
|
+
|
||||||
|
+ o/crypt_zip.o: crypt_zip.c $(SYMS)
|
||||||
|
+
|
||||||
|
o/diff.o: diff.c $(SYMS)
|
||||||
|
|
||||||
|
o/digraph.o: digraph.c $(SYMS)
|
||||||
|
*** ../vim-7.4.400/src/Make_djg.mak 2010-05-18 20:29:18.000000000 +0200
|
||||||
|
--- src/Make_djg.mak 2014-08-10 16:22:13.084713340 +0200
|
||||||
|
***************
|
||||||
|
*** 22,27 ****
|
||||||
|
--- 22,29 ----
|
||||||
|
obj/blowfish.o \
|
||||||
|
obj/buffer.o \
|
||||||
|
obj/charset.o \
|
||||||
|
+ obj/crypt.o \
|
||||||
|
+ obj/crypt_zip.o \
|
||||||
|
obj/diff.o \
|
||||||
|
obj/digraph.o \
|
||||||
|
obj/edit.o \
|
||||||
|
*** ../vim-7.4.400/src/Make_ivc.mak 2013-02-26 14:18:19.000000000 +0100
|
||||||
|
--- src/Make_ivc.mak 2014-08-10 16:22:46.268713102 +0200
|
||||||
|
***************
|
||||||
|
*** 213,218 ****
|
||||||
|
--- 213,220 ----
|
||||||
|
"$(INTDIR)/blowfish.obj" \
|
||||||
|
"$(INTDIR)/buffer.obj" \
|
||||||
|
"$(INTDIR)/charset.obj" \
|
||||||
|
+ "$(INTDIR)/crypt.obj" \
|
||||||
|
+ "$(INTDIR)/crypt_zip.obj" \
|
||||||
|
"$(INTDIR)/diff.obj" \
|
||||||
|
"$(INTDIR)/digraph.obj" \
|
||||||
|
"$(INTDIR)/edit.obj" \
|
||||||
|
***************
|
||||||
|
*** 339,344 ****
|
||||||
|
--- 341,354 ----
|
||||||
|
# End Source File
|
||||||
|
# Begin Source File
|
||||||
|
|
||||||
|
+ SOURCE=.\crypt.c
|
||||||
|
+ # End Source File
|
||||||
|
+ # Begin Source File
|
||||||
|
+
|
||||||
|
+ SOURCE=.\crypt_zip.c
|
||||||
|
+ # End Source File
|
||||||
|
+ # Begin Source File
|
||||||
|
+
|
||||||
|
SOURCE=.\diff.c
|
||||||
|
# End Source File
|
||||||
|
# Begin Source File
|
||||||
|
*** ../vim-7.4.400/src/Make_manx.mak 2010-05-18 20:30:54.000000000 +0200
|
||||||
|
--- src/Make_manx.mak 2014-08-10 16:23:43.648712689 +0200
|
||||||
|
***************
|
||||||
|
*** 37,42 ****
|
||||||
|
--- 37,44 ----
|
||||||
|
SRC = blowfish.c \
|
||||||
|
buffer.c \
|
||||||
|
charset.c \
|
||||||
|
+ crypt.c \
|
||||||
|
+ crypt_zip.c \
|
||||||
|
diff.c \
|
||||||
|
digraph.c \
|
||||||
|
edit.c \
|
||||||
|
***************
|
||||||
|
*** 85,90 ****
|
||||||
|
--- 87,94 ----
|
||||||
|
OBJ = obj/blowfish.o \
|
||||||
|
obj/buffer.o \
|
||||||
|
obj/charset.o \
|
||||||
|
+ obj/crypt.o \
|
||||||
|
+ obj/crypt_zip.o \
|
||||||
|
obj/diff.o \
|
||||||
|
obj/digraph.o \
|
||||||
|
obj/edit.o \
|
||||||
|
***************
|
||||||
|
*** 131,136 ****
|
||||||
|
--- 135,142 ----
|
||||||
|
PRO = proto/blowfish.pro \
|
||||||
|
proto/buffer.pro \
|
||||||
|
proto/charset.pro \
|
||||||
|
+ proto/crypt.pro \
|
||||||
|
+ proto/crypt_zip.pro \
|
||||||
|
proto/diff.pro \
|
||||||
|
proto/digraph.pro \
|
||||||
|
proto/edit.pro \
|
||||||
|
***************
|
||||||
|
*** 227,232 ****
|
||||||
|
--- 233,244 ----
|
||||||
|
obj/charset.o: charset.c
|
||||||
|
$(CCSYM) $@ charset.c
|
||||||
|
|
||||||
|
+ obj/crypt.o: crypt.c
|
||||||
|
+ $(CCSYM) $@ crypt.c
|
||||||
|
+
|
||||||
|
+ obj/crypt_zip.o: crypt_zip.c
|
||||||
|
+ $(CCSYM) $@ crypt_zip.c
|
||||||
|
+
|
||||||
|
obj/diff.o: diff.c
|
||||||
|
$(CCSYM) $@ diff.c
|
||||||
|
|
||||||
|
*** ../vim-7.4.400/src/Make_ming.mak 2014-08-06 14:52:05.039236174 +0200
|
||||||
|
--- src/Make_ming.mak 2014-08-10 16:24:07.064712521 +0200
|
||||||
|
***************
|
||||||
|
*** 517,522 ****
|
||||||
|
--- 517,524 ----
|
||||||
|
$(OUTDIR)/blowfish.o \
|
||||||
|
$(OUTDIR)/buffer.o \
|
||||||
|
$(OUTDIR)/charset.o \
|
||||||
|
+ $(OUTDIR)/crypt.o \
|
||||||
|
+ $(OUTDIR)/crypt_zip.o \
|
||||||
|
$(OUTDIR)/diff.o \
|
||||||
|
$(OUTDIR)/digraph.o \
|
||||||
|
$(OUTDIR)/edit.o \
|
||||||
|
*** ../vim-7.4.400/src/Make_morph.mak 2010-05-18 20:31:26.000000000 +0200
|
||||||
|
--- src/Make_morph.mak 2014-08-10 16:24:39.900712285 +0200
|
||||||
|
***************
|
||||||
|
*** 27,32 ****
|
||||||
|
--- 27,34 ----
|
||||||
|
SRC = blowfish.c \
|
||||||
|
buffer.c \
|
||||||
|
charset.c \
|
||||||
|
+ crypt.c \
|
||||||
|
+ crypt_zip.c \
|
||||||
|
diff.c \
|
||||||
|
digraph.c \
|
||||||
|
edit.c \
|
||||||
|
*** ../vim-7.4.400/src/Make_mvc.mak 2014-08-06 14:52:05.039236174 +0200
|
||||||
|
--- src/Make_mvc.mak 2014-08-10 16:25:19.752711999 +0200
|
||||||
|
***************
|
||||||
|
*** 547,552 ****
|
||||||
|
--- 547,554 ----
|
||||||
|
$(OUTDIR)\blowfish.obj \
|
||||||
|
$(OUTDIR)\buffer.obj \
|
||||||
|
$(OUTDIR)\charset.obj \
|
||||||
|
+ $(OUTDIR)\crypt.obj \
|
||||||
|
+ $(OUTDIR)\crypt_zip.obj \
|
||||||
|
$(OUTDIR)\diff.obj \
|
||||||
|
$(OUTDIR)\digraph.obj \
|
||||||
|
$(OUTDIR)\edit.obj \
|
||||||
|
***************
|
||||||
|
*** 1092,1097 ****
|
||||||
|
--- 1094,1103 ----
|
||||||
|
|
||||||
|
$(OUTDIR)/charset.obj: $(OUTDIR) charset.c $(INCL)
|
||||||
|
|
||||||
|
+ $(OUTDIR)/crypt.obj: $(OUTDIR) crypt.c $(INCL)
|
||||||
|
+
|
||||||
|
+ $(OUTDIR)/crypt_zip.obj: $(OUTDIR) crypt_zip.c $(INCL)
|
||||||
|
+
|
||||||
|
$(OUTDIR)/diff.obj: $(OUTDIR) diff.c $(INCL)
|
||||||
|
|
||||||
|
$(OUTDIR)/digraph.obj: $(OUTDIR) digraph.c $(INCL)
|
||||||
|
***************
|
||||||
|
*** 1278,1283 ****
|
||||||
|
--- 1284,1291 ----
|
||||||
|
proto/blowfish.pro \
|
||||||
|
proto/buffer.pro \
|
||||||
|
proto/charset.pro \
|
||||||
|
+ proto/crypt.pro \
|
||||||
|
+ proto/crypt_zip.pro \
|
||||||
|
proto/diff.pro \
|
||||||
|
proto/digraph.pro \
|
||||||
|
proto/edit.pro \
|
||||||
|
*** ../vim-7.4.400/src/Make_os2.mak 2010-05-18 20:32:32.000000000 +0200
|
||||||
|
--- src/Make_os2.mak 2014-08-10 16:25:47.928711796 +0200
|
||||||
|
***************
|
||||||
|
*** 42,47 ****
|
||||||
|
--- 42,49 ----
|
||||||
|
blowfish.o \
|
||||||
|
buffer.o \
|
||||||
|
charset.o \
|
||||||
|
+ crypt.o \
|
||||||
|
+ crypt_zip.o \
|
||||||
|
diff.o \
|
||||||
|
digraph.o \
|
||||||
|
edit.o \
|
||||||
|
***************
|
||||||
|
*** 117,122 ****
|
||||||
|
--- 119,126 ----
|
||||||
|
blowfish.o: blowfish.c $(INCL)
|
||||||
|
buffer.o: buffer.c $(INCL)
|
||||||
|
charset.o: charset.c $(INCL)
|
||||||
|
+ crypt.o: crypt.c $(INCL)
|
||||||
|
+ crypt_zip.o: crypt_zip.c $(INCL)
|
||||||
|
diff.o: diff.c $(INCL)
|
||||||
|
digraph.o: digraph.c $(INCL)
|
||||||
|
edit.o: edit.c $(INCL)
|
||||||
|
*** ../vim-7.4.400/src/Make_sas.mak 2013-05-06 04:06:04.000000000 +0200
|
||||||
|
--- src/Make_sas.mak 2014-08-10 16:26:41.536711411 +0200
|
||||||
|
***************
|
||||||
|
*** 92,97 ****
|
||||||
|
--- 92,99 ----
|
||||||
|
blowfish.c \
|
||||||
|
buffer.c \
|
||||||
|
charset.c \
|
||||||
|
+ crypt.c \
|
||||||
|
+ crypt_zip.c \
|
||||||
|
diff.c \
|
||||||
|
digraph.c \
|
||||||
|
edit.c \
|
||||||
|
***************
|
||||||
|
*** 139,144 ****
|
||||||
|
--- 141,148 ----
|
||||||
|
blowfish.o \
|
||||||
|
buffer.o \
|
||||||
|
charset.o \
|
||||||
|
+ crypt.o \
|
||||||
|
+ crypt_zip.o \
|
||||||
|
diff.o \
|
||||||
|
digraph.o \
|
||||||
|
edit.o \
|
||||||
|
***************
|
||||||
|
*** 186,191 ****
|
||||||
|
--- 190,197 ----
|
||||||
|
proto/blowfish.pro \
|
||||||
|
proto/buffer.pro \
|
||||||
|
proto/charset.pro \
|
||||||
|
+ proto/crypt.pro \
|
||||||
|
+ proto/crypt_zip.pro \
|
||||||
|
proto/diff.pro \
|
||||||
|
proto/digraph.pro \
|
||||||
|
proto/edit.pro \
|
||||||
|
***************
|
||||||
|
*** 290,295 ****
|
||||||
|
--- 296,305 ----
|
||||||
|
proto/buffer.pro: buffer.c
|
||||||
|
charset.o: charset.c
|
||||||
|
proto/charset.pro: charset.c
|
||||||
|
+ crypt.o: crypt.c
|
||||||
|
+ proto/crypt.pro: crypt.c
|
||||||
|
+ crypt_zip.o: crypt_zip.c
|
||||||
|
+ proto/crypt_zip.pro: crypt_zip.c
|
||||||
|
diff.o: diff.c
|
||||||
|
proto/diff.pro: diff.c
|
||||||
|
digraph.o: digraph.c
|
||||||
|
*** ../vim-7.4.400/src/version.c 2014-08-10 13:46:30.424780490 +0200
|
||||||
|
--- src/version.c 2014-08-10 16:27:26.380711088 +0200
|
||||||
|
***************
|
||||||
|
*** 743,744 ****
|
||||||
|
--- 743,746 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 401,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
When a fly lands on the ceiling, does it do a half roll or
|
||||||
|
a half loop?
|
||||||
|
|
||||||
|
/// 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 ///
|
103
7.4.402
Normal file
103
7.4.402
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
To: vim_dev@googlegroups.com
|
||||||
|
Subject: Patch 7.4.402
|
||||||
|
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.4.402
|
||||||
|
Problem: Test 72 crashes under certain conditions. (Kazunobu Kuriyama)
|
||||||
|
Solution: Clear the whole bufinfo_T early.
|
||||||
|
Files: src/undo.c
|
||||||
|
|
||||||
|
|
||||||
|
*** ../vim-7.4.401/src/undo.c 2014-08-10 13:34:59.064785459 +0200
|
||||||
|
--- src/undo.c 2014-08-12 20:08:23.915373819 +0200
|
||||||
|
***************
|
||||||
|
*** 929,935 ****
|
||||||
|
undo_flush(bi)
|
||||||
|
bufinfo_T *bi;
|
||||||
|
{
|
||||||
|
! if (bi->bi_used > 0)
|
||||||
|
{
|
||||||
|
crypt_encode_inplace(bi->bi_state, bi->bi_buffer, bi->bi_used);
|
||||||
|
if (fwrite(bi->bi_buffer, bi->bi_used, (size_t)1, bi->bi_fp) != 1)
|
||||||
|
--- 929,935 ----
|
||||||
|
undo_flush(bi)
|
||||||
|
bufinfo_T *bi;
|
||||||
|
{
|
||||||
|
! if (bi->bi_buffer != NULL && bi->bi_used > 0)
|
||||||
|
{
|
||||||
|
crypt_encode_inplace(bi->bi_state, bi->bi_buffer, bi->bi_used);
|
||||||
|
if (fwrite(bi->bi_buffer, bi->bi_used, (size_t)1, bi->bi_fp) != 1)
|
||||||
|
***************
|
||||||
|
*** 1573,1582 ****
|
||||||
|
#endif
|
||||||
|
bufinfo_T bi;
|
||||||
|
|
||||||
|
! #ifdef FEAT_CRYPT
|
||||||
|
! bi.bi_state = NULL;
|
||||||
|
! bi.bi_buffer = NULL;
|
||||||
|
! #endif
|
||||||
|
|
||||||
|
if (name == NULL)
|
||||||
|
{
|
||||||
|
--- 1573,1579 ----
|
||||||
|
#endif
|
||||||
|
bufinfo_T bi;
|
||||||
|
|
||||||
|
! vim_memset(&bi, 0, sizeof(bi));
|
||||||
|
|
||||||
|
if (name == NULL)
|
||||||
|
{
|
||||||
|
***************
|
||||||
|
*** 1861,1866 ****
|
||||||
|
--- 1858,1864 ----
|
||||||
|
#endif
|
||||||
|
bufinfo_T bi;
|
||||||
|
|
||||||
|
+ vim_memset(&bi, 0, sizeof(bi));
|
||||||
|
if (name == NULL)
|
||||||
|
{
|
||||||
|
file_name = u_get_undo_file_name(curbuf->b_ffname, TRUE);
|
||||||
|
***************
|
||||||
|
*** 1905,1914 ****
|
||||||
|
}
|
||||||
|
bi.bi_buf = curbuf;
|
||||||
|
bi.bi_fp = fp;
|
||||||
|
- #ifdef FEAT_CRYPT
|
||||||
|
- bi.bi_state = NULL;
|
||||||
|
- bi.bi_buffer = NULL;
|
||||||
|
- #endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Read the undo file header.
|
||||||
|
--- 1903,1908 ----
|
||||||
|
*** ../vim-7.4.401/src/version.c 2014-08-10 16:31:47.376709213 +0200
|
||||||
|
--- src/version.c 2014-08-12 20:11:13.879372598 +0200
|
||||||
|
***************
|
||||||
|
*** 743,744 ****
|
||||||
|
--- 743,746 ----
|
||||||
|
{ /* Add new patch number below this line */
|
||||||
|
+ /**/
|
||||||
|
+ 402,
|
||||||
|
/**/
|
||||||
|
|
||||||
|
--
|
||||||
|
Far back in the mists of ancient time, in the great and glorious days of the
|
||||||
|
former Galactic Empire, life was wild, rich and largely tax free.
|
||||||
|
Mighty starships plied their way between exotic suns, seeking adventure and
|
||||||
|
reward among the furthest reaches of Galactic space. In those days, spirits
|
||||||
|
were brave, the stakes were high, men were real men, women were real women
|
||||||
|
and small furry creatures from Alpha Centauri were real small furry creatures
|
||||||
|
from Alpha Centauri. And all dared to brave unknown terrors, to do mighty
|
||||||
|
deeds, to boldly split infinitives that no man had split before -- and thus
|
||||||
|
was the Empire forged.
|
||||||
|
-- Douglas Adams, "The Hitchhiker's Guide to the Galaxy"
|
||||||
|
|
||||||
|
/// 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 ///
|
@ -331,3 +331,97 @@ Individual patches for Vim 7.4:
|
|||||||
7820 7.4.305 making 'ttymouse' empty causes problems
|
7820 7.4.305 making 'ttymouse' empty causes problems
|
||||||
2660 7.4.306 getchar(0) does not return Esc
|
2660 7.4.306 getchar(0) does not return Esc
|
||||||
4150 7.4.307 can't build without the +termresponse feature
|
4150 7.4.307 can't build without the +termresponse feature
|
||||||
|
1420 7.4.308 ":diffsplit" on empty file cursor is displayed on command line
|
||||||
|
2095 7.4.309 increasing size of lower window, upper window jumps to the top
|
||||||
|
11194 7.4.310 getpos()/setpos() don't include curswant
|
||||||
|
4740 7.4.311 can't use winrestview to only restore part of the view
|
||||||
|
6272 7.4.312 cannot know what argument list is being used for a window
|
||||||
|
10912 7.4.313 (after 7.4.310) changing return value of getpos() causes error
|
||||||
|
5875 7.4.314 completion messages can get in the way of a plugin
|
||||||
|
8020 7.4.315 (after 7.4.309) fixes for computation of topline not tested
|
||||||
|
1537 7.4.316 warning from 64-bit compiler
|
||||||
|
1434 7.4.317 crash when starting gvim, issue 230
|
||||||
|
1748 7.4.318 fg/bg color settings ignored when checking syntax attributes
|
||||||
|
1764 7.4.319 crash when putting zero bytes on the clipboard
|
||||||
|
4439 7.4.320 possible crash when an BufLeave autocommand deletes the buffer
|
||||||
|
2515 7.4.321 can't build with strawberry perl 5.20 + mingw-w64-4.9.0
|
||||||
|
3274 7.4.322 using "msgfmt" is hard coded, cannot use "gmsgfmt"
|
||||||
|
2898 7.4.323 substitute() with zero width pattern breaks multi-byte char
|
||||||
|
4631 7.4.324 in Ex mode, cyrillic characters are not handled
|
||||||
|
2070 7.4.325 incorrect display when starting GUI and setting 'laststatus'
|
||||||
|
1384 7.4.326 can't build Tiny version
|
||||||
|
4330 7.4.327 when 'verbose' is set may get E724 repeatedly
|
||||||
|
2580 7.4.328 selection of inner block is inconsistent
|
||||||
|
1945 7.4.329 window not scrolled if moving cursor and go to another window
|
||||||
|
32746 7.4.330 using regexp pattern to show a position match can be slow
|
||||||
|
1506 7.4.331 relative numbering not updated after a linewise yank
|
||||||
|
4079 7.4.332 GTK: ugly gaps when a sign icon doesn't fit exactly
|
||||||
|
2036 7.4.333 compiler warning for unused function
|
||||||
|
3295 7.4.334 (after 7.4.330) unitialized variables, causing some problems
|
||||||
|
3313 7.4.335 no digraph for the new rouble sign
|
||||||
|
3536 7.4.336 setting 'history' to a big value causes out-of-memory errors
|
||||||
|
1589 7.4.337 can't execute command line if there was an error before
|
||||||
|
52480 7.4.338 cannot wrap lines taking indent into account
|
||||||
|
2655 7.4.339 local function is available globally
|
||||||
|
3140 7.4.340 error from sed about illegal bytes when installing Vim
|
||||||
|
6001 7.4.341 sort() doesn't handle numbers well
|
||||||
|
1988 7.4.342 clang gives warnings
|
||||||
|
1850 7.4.343 matchdelete() does not always update the right lines
|
||||||
|
5304 7.4.344 small issues related to matchaddpos()
|
||||||
|
2618 7.4.345 (after 7.4.338) indent is not updated when deleting indent
|
||||||
|
1963 7.4.346 (after 7.4.338) indent is not updated when changing 'briopt'
|
||||||
|
3209 7.4.347 test55 fails on some systems
|
||||||
|
1738 7.4.348 Using "J1" in 'cinoptions' may cause too much indent
|
||||||
|
2967 7.4.349 avoid redrawing the whole window with highlighted matches
|
||||||
|
3909 7.4.350 C-indenting for Javascript fails for a {} block inside parens
|
||||||
|
6034 7.4.351 sort() is not stable
|
||||||
|
2637 7.4.352 with 'linebreak' a Tab causes a missing line break
|
||||||
|
14437 7.4.353 'linebreak' doesn't work with the 'list' option
|
||||||
|
1891 7.4.354 compiler warning
|
||||||
|
21483 7.4.355 several problems with Javascript indenting
|
||||||
|
1247 7.4.356 mercurial does not ignore memfile_test
|
||||||
|
1654 7.4.357 after completion some characters are not redrawn
|
||||||
|
8040 7.4.358 (after 7.4.351) sort is not always stable
|
||||||
|
2942 7.4.359 if 'ttymouse' set to 'uxterm' xterm version is not requested
|
||||||
|
2461 7.4.360 pattern with "$" followed by \[vV] is not used as end-of-line
|
||||||
|
1487 7.4.361 flickering when filling the preview window for 'omnifunc'
|
||||||
|
1608 7.4.362 short length in matchaddpos() highlights until end of the line
|
||||||
|
4445 7.4.363 in Windows console typing 0xCE does not work
|
||||||
|
2425 7.4.364 no error message when the viminfo file can't be renamed
|
||||||
|
3973 7.4.365 crash when using ":botright split" when there isn't much space
|
||||||
|
1602 7.4.366 can't run the linebreak test on MS-Windows
|
||||||
|
2165 7.4.367 (after 7.4.357) other solution for redrawing after completion
|
||||||
|
2581 7.4.368 window sizes not restored properly when closing cmdline window
|
||||||
|
2331 7.4.369 using freed memory when exiting while compiled with EXITFREE
|
||||||
|
9476 7.4.370 linebreak test fails when encoding is not utf-8
|
||||||
|
1880 7.4.371 with 'linebreak' set control characters displayed wrong
|
||||||
|
5628 7.4.372 with 'winminheight' zero current window might be zero height
|
||||||
|
2668 7.4.373 compiler warning for unused argument and unused variable
|
||||||
|
2461 7.4.374 character after "fb" command sometimes not mapped
|
||||||
|
1967 7.4.375 test 63 fails when run with GUI-only Vim
|
||||||
|
1877 7.4.376 (after 7.4.367) popup menu flickers too much
|
||||||
|
4200 7.4.377 with 'equalalways' set a split may report "no room"
|
||||||
|
9720 7.4.378 title of quickfist list is not kept for setqflist(list, 'r')
|
||||||
|
1382 7.4.379 accessing freed memory after using setqflist(list, 'r')
|
||||||
|
3324 7.4.380 loading python may cause Vim to exit
|
||||||
|
1359 7.4.381 u_undo error when backspacing in Insert mode deletes 2 lines
|
||||||
|
1876 7.4.382 mapping chars may not work after typing Esc in Insert mode
|
||||||
|
1744 7.4.383 bad interaction between preview window and omnifunc
|
||||||
|
1522 7.4.384 test 102 fails when compiled with small features
|
||||||
|
2559 7.4.385 when building with tiny/small features .mo files build fails
|
||||||
|
5536 7.4.386 when splitting a window the changelist position is wrong
|
||||||
|
6083 7.4.387 "4gro" replaces one character then executes "ooo"
|
||||||
|
2972 7.4.388 with 'linebreak' set and 'list' unset Tab not counted properly
|
||||||
|
13930 7.4.389 still sometimes Vim enters Replace mode when starting up
|
||||||
|
1411 7.4.390 advancing pointer over end of a string
|
||||||
|
3316 7.4.391 no 'cul' highlight with cursor on a line with diff highlight
|
||||||
|
2701 7.4.392 not easy to detect type of command line window
|
||||||
|
53004 7.4.393 text drawing on newer MS-Windows systems is suboptimal
|
||||||
|
1890 7.4.394 (after 7.4.393) with DirectX last italic char is incomplete
|
||||||
|
2600 7.4.395 C indent wrong below an if with wrapped () followed by {}
|
||||||
|
8881 7.4.396 when 'clipboard' is "unnamed", :g/pat/d is very slow
|
||||||
|
5060 7.4.397 matchparen only uses the topmost syntax item
|
||||||
|
1533 7.4.398 (after 7.4.393) gcc error for argument of InterlockedIncrement
|
||||||
|
136105 7.4.399 crypt implementation is messy; blowfish crypt has a weakness
|
||||||
|
1848 7.4.400 list of distributed files is incomplete
|
||||||
|
8581 7.4.401 (after 7.4.399) new files missing in Makefiles
|
||||||
|
245
vim.spec
245
vim.spec
@ -1,4 +1,4 @@
|
|||||||
%define patchlevel 307
|
%define patchlevel 402
|
||||||
%if %{?WITH_SELINUX:0}%{!?WITH_SELINUX:1}
|
%if %{?WITH_SELINUX:0}%{!?WITH_SELINUX:1}
|
||||||
%define WITH_SELINUX 1
|
%define WITH_SELINUX 1
|
||||||
%endif
|
%endif
|
||||||
@ -21,7 +21,7 @@ Summary: The VIM editor
|
|||||||
URL: http://www.vim.org/
|
URL: http://www.vim.org/
|
||||||
Name: vim
|
Name: vim
|
||||||
Version: %{baseversion}.%{patchlevel}
|
Version: %{baseversion}.%{patchlevel}
|
||||||
Release: 3%{?dist}
|
Release: 1%{?dist}
|
||||||
License: Vim
|
License: Vim
|
||||||
Group: Applications/Editors
|
Group: Applications/Editors
|
||||||
Source0: ftp://ftp.vim.org/pub/vim/unix/vim-%{baseversion}.tar.bz2
|
Source0: ftp://ftp.vim.org/pub/vim/unix/vim-%{baseversion}.tar.bz2
|
||||||
@ -355,6 +355,101 @@ Patch304: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.304
|
|||||||
Patch305: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.305
|
Patch305: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.305
|
||||||
Patch306: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.306
|
Patch306: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.306
|
||||||
Patch307: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.307
|
Patch307: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.307
|
||||||
|
Patch308: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.308
|
||||||
|
Patch309: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.309
|
||||||
|
Patch310: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.310
|
||||||
|
Patch311: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.311
|
||||||
|
Patch312: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.312
|
||||||
|
Patch313: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.313
|
||||||
|
Patch314: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.314
|
||||||
|
Patch315: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.315
|
||||||
|
Patch316: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.316
|
||||||
|
Patch317: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.317
|
||||||
|
Patch318: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.318
|
||||||
|
Patch319: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.319
|
||||||
|
Patch320: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.320
|
||||||
|
Patch321: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.321
|
||||||
|
Patch322: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.322
|
||||||
|
Patch323: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.323
|
||||||
|
Patch324: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.324
|
||||||
|
Patch325: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.325
|
||||||
|
Patch326: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.326
|
||||||
|
Patch327: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.327
|
||||||
|
Patch328: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.328
|
||||||
|
Patch329: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.329
|
||||||
|
Patch330: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.330
|
||||||
|
Patch331: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.331
|
||||||
|
Patch332: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.332
|
||||||
|
Patch333: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.333
|
||||||
|
Patch334: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.334
|
||||||
|
Patch335: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.335
|
||||||
|
Patch336: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.336
|
||||||
|
Patch337: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.337
|
||||||
|
Patch338: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.338
|
||||||
|
Patch339: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.339
|
||||||
|
Patch340: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.340
|
||||||
|
Patch341: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.341
|
||||||
|
Patch342: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.342
|
||||||
|
Patch343: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.343
|
||||||
|
Patch344: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.344
|
||||||
|
Patch345: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.345
|
||||||
|
Patch346: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.346
|
||||||
|
Patch347: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.347
|
||||||
|
Patch348: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.348
|
||||||
|
Patch349: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.349
|
||||||
|
Patch350: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.350
|
||||||
|
Patch351: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.351
|
||||||
|
Patch352: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.352
|
||||||
|
Patch353: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.353
|
||||||
|
Patch354: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.354
|
||||||
|
Patch355: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.355
|
||||||
|
Patch356: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.356
|
||||||
|
Patch357: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.357
|
||||||
|
Patch358: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.358
|
||||||
|
Patch359: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.359
|
||||||
|
Patch360: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.360
|
||||||
|
Patch361: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.361
|
||||||
|
Patch362: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.362
|
||||||
|
Patch363: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.363
|
||||||
|
Patch364: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.364
|
||||||
|
Patch365: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.365
|
||||||
|
Patch366: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.366
|
||||||
|
Patch367: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.367
|
||||||
|
Patch368: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.368
|
||||||
|
Patch369: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.369
|
||||||
|
Patch370: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.370
|
||||||
|
Patch371: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.371
|
||||||
|
Patch372: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.372
|
||||||
|
Patch373: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.373
|
||||||
|
Patch374: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.374
|
||||||
|
Patch375: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.375
|
||||||
|
Patch376: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.376
|
||||||
|
Patch377: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.377
|
||||||
|
Patch378: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.378
|
||||||
|
Patch379: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.379
|
||||||
|
Patch380: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.380
|
||||||
|
Patch381: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.381
|
||||||
|
Patch382: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.382
|
||||||
|
Patch383: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.383
|
||||||
|
Patch384: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.384
|
||||||
|
Patch385: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.385
|
||||||
|
Patch386: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.386
|
||||||
|
Patch387: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.387
|
||||||
|
Patch388: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.388
|
||||||
|
Patch389: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.389
|
||||||
|
Patch390: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.390
|
||||||
|
Patch391: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.391
|
||||||
|
Patch392: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.392
|
||||||
|
Patch393: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.393
|
||||||
|
Patch394: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.394
|
||||||
|
Patch395: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.395
|
||||||
|
Patch396: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.396
|
||||||
|
Patch397: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.397
|
||||||
|
Patch398: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.398
|
||||||
|
Patch399: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.399
|
||||||
|
Patch400: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.400
|
||||||
|
Patch401: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.401
|
||||||
|
Patch402: ftp://ftp.vim.org/pub/vim/patches/7.4/7.4.402
|
||||||
|
|
||||||
Patch3000: vim-7.4-syntax.patch
|
Patch3000: vim-7.4-syntax.patch
|
||||||
Patch3002: vim-7.1-nowarnings.patch
|
Patch3002: vim-7.1-nowarnings.patch
|
||||||
@ -810,6 +905,101 @@ perl -pi -e "s,bin/nawk,bin/awk,g" runtime/tools/mve.awk
|
|||||||
%patch305 -p0
|
%patch305 -p0
|
||||||
%patch306 -p0
|
%patch306 -p0
|
||||||
%patch307 -p0
|
%patch307 -p0
|
||||||
|
%patch308 -p0
|
||||||
|
%patch309 -p0
|
||||||
|
%patch310 -p0
|
||||||
|
%patch311 -p0
|
||||||
|
%patch312 -p0
|
||||||
|
%patch313 -p0
|
||||||
|
%patch314 -p0
|
||||||
|
%patch315 -p0
|
||||||
|
%patch316 -p0
|
||||||
|
%patch317 -p0
|
||||||
|
%patch318 -p0
|
||||||
|
%patch319 -p0
|
||||||
|
%patch320 -p0
|
||||||
|
%patch321 -p0
|
||||||
|
%patch322 -p0
|
||||||
|
%patch323 -p0
|
||||||
|
%patch324 -p0
|
||||||
|
%patch325 -p0
|
||||||
|
%patch326 -p0
|
||||||
|
%patch327 -p0
|
||||||
|
%patch328 -p0
|
||||||
|
%patch329 -p0
|
||||||
|
%patch330 -p0
|
||||||
|
%patch331 -p0
|
||||||
|
%patch332 -p0
|
||||||
|
%patch333 -p0
|
||||||
|
%patch334 -p0
|
||||||
|
%patch335 -p0
|
||||||
|
%patch336 -p0
|
||||||
|
%patch337 -p0
|
||||||
|
%patch338 -p0
|
||||||
|
%patch339 -p0
|
||||||
|
%patch340 -p0
|
||||||
|
%patch341 -p0
|
||||||
|
%patch342 -p0
|
||||||
|
%patch343 -p0
|
||||||
|
%patch344 -p0
|
||||||
|
%patch345 -p0
|
||||||
|
%patch346 -p0
|
||||||
|
%patch347 -p0
|
||||||
|
%patch348 -p0
|
||||||
|
%patch349 -p0
|
||||||
|
%patch350 -p0
|
||||||
|
%patch351 -p0
|
||||||
|
%patch352 -p0
|
||||||
|
%patch353 -p0
|
||||||
|
%patch354 -p0
|
||||||
|
%patch355 -p0
|
||||||
|
%patch356 -p0
|
||||||
|
%patch357 -p0
|
||||||
|
%patch358 -p0
|
||||||
|
%patch359 -p0
|
||||||
|
%patch360 -p0
|
||||||
|
%patch361 -p0
|
||||||
|
%patch362 -p0
|
||||||
|
%patch363 -p0
|
||||||
|
%patch364 -p0
|
||||||
|
%patch365 -p0
|
||||||
|
%patch366 -p0
|
||||||
|
%patch367 -p0
|
||||||
|
%patch368 -p0
|
||||||
|
%patch369 -p0
|
||||||
|
%patch370 -p0
|
||||||
|
%patch371 -p0
|
||||||
|
%patch372 -p0
|
||||||
|
%patch373 -p0
|
||||||
|
%patch374 -p0
|
||||||
|
%patch375 -p0
|
||||||
|
%patch376 -p0
|
||||||
|
%patch377 -p0
|
||||||
|
%patch378 -p0
|
||||||
|
%patch379 -p0
|
||||||
|
%patch380 -p0
|
||||||
|
%patch381 -p0
|
||||||
|
%patch382 -p0
|
||||||
|
%patch383 -p0
|
||||||
|
%patch384 -p0
|
||||||
|
%patch385 -p0
|
||||||
|
%patch386 -p0
|
||||||
|
%patch387 -p0
|
||||||
|
%patch388 -p0
|
||||||
|
%patch389 -p0
|
||||||
|
%patch390 -p0
|
||||||
|
%patch391 -p0
|
||||||
|
%patch392 -p0
|
||||||
|
%patch393 -p0
|
||||||
|
%patch394 -p0
|
||||||
|
%patch395 -p0
|
||||||
|
%patch396 -p0
|
||||||
|
%patch397 -p0
|
||||||
|
%patch398 -p0
|
||||||
|
%patch399 -p0
|
||||||
|
%patch400 -p0
|
||||||
|
%patch401 -p0
|
||||||
|
%patch402 -p0
|
||||||
|
|
||||||
# install spell files
|
# install spell files
|
||||||
%if %{withvimspell}
|
%if %{withvimspell}
|
||||||
@ -843,6 +1033,26 @@ mv -f Makefile.tmp Makefile
|
|||||||
export CFLAGS="%{optflags} -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2"
|
export CFLAGS="%{optflags} -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2"
|
||||||
export CXXFLAGS="%{optflags} -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2"
|
export CXXFLAGS="%{optflags} -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2"
|
||||||
|
|
||||||
|
|
||||||
|
perl -pi -e "s/help.txt/vi_help.txt/" os_unix.h ex_cmds.c
|
||||||
|
perl -pi -e "s/\/etc\/vimrc/\/etc\/virc/" os_unix.h
|
||||||
|
%configure --prefix=%{_prefix} --with-features=small --with-x=no \
|
||||||
|
--enable-multibyte \
|
||||||
|
--disable-netbeans \
|
||||||
|
%if %{WITH_SELINUX}
|
||||||
|
--enable-selinux \
|
||||||
|
%else
|
||||||
|
--disable-selinux \
|
||||||
|
%endif
|
||||||
|
--disable-pythoninterp --disable-perlinterp --disable-tclinterp \
|
||||||
|
--with-tlib=ncurses --enable-gui=no --disable-gpm --exec-prefix=/ \
|
||||||
|
--with-compiledby="<bugzilla@redhat.com>" \
|
||||||
|
--with-modified-by="<bugzilla@redhat.com>"
|
||||||
|
|
||||||
|
make VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/%{vimdir} %{?_smp_mflags}
|
||||||
|
cp vim minimal-vim
|
||||||
|
make clean
|
||||||
|
|
||||||
%configure --with-features=huge \
|
%configure --with-features=huge \
|
||||||
--enable-pythoninterp=dynamic \
|
--enable-pythoninterp=dynamic \
|
||||||
--enable-perlinterp \
|
--enable-perlinterp \
|
||||||
@ -909,24 +1119,6 @@ make clean
|
|||||||
|
|
||||||
make VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/%{vimdir} %{?_smp_mflags}
|
make VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/%{vimdir} %{?_smp_mflags}
|
||||||
cp vim enhanced-vim
|
cp vim enhanced-vim
|
||||||
make clean
|
|
||||||
|
|
||||||
perl -pi -e "s/help.txt/vi_help.txt/" os_unix.h ex_cmds.c
|
|
||||||
perl -pi -e "s/\/etc\/vimrc/\/etc\/virc/" os_unix.h
|
|
||||||
%configure --prefix=%{_prefix} --with-features=small --with-x=no \
|
|
||||||
--enable-multibyte \
|
|
||||||
--disable-netbeans \
|
|
||||||
%if %{WITH_SELINUX}
|
|
||||||
--enable-selinux \
|
|
||||||
%else
|
|
||||||
--disable-selinux \
|
|
||||||
%endif
|
|
||||||
--disable-pythoninterp --disable-perlinterp --disable-tclinterp \
|
|
||||||
--with-tlib=ncurses --enable-gui=no --disable-gpm --exec-prefix=/ \
|
|
||||||
--with-compiledby="<bugzilla@redhat.com>" \
|
|
||||||
--with-modified-by="<bugzilla@redhat.com>"
|
|
||||||
|
|
||||||
make VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/%{vimdir} %{?_smp_mflags}
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
rm -rf %{buildroot}
|
rm -rf %{buildroot}
|
||||||
@ -948,7 +1140,7 @@ cd src
|
|||||||
make install DESTDIR=%{buildroot} BINDIR=%{_bindir} VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/%{vimdir}
|
make install DESTDIR=%{buildroot} BINDIR=%{_bindir} VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/%{vimdir}
|
||||||
make installgtutorbin DESTDIR=%{buildroot} BINDIR=%{_bindir} VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/%{vimdir}
|
make installgtutorbin DESTDIR=%{buildroot} BINDIR=%{_bindir} VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/%{vimdir}
|
||||||
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/{16x16,32x32,48x48,64x64}/apps
|
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/{16x16,32x32,48x48,64x64}/apps
|
||||||
install -m755 vim %{buildroot}%{_bindir}/vi
|
install -m755 minimal-vim %{buildroot}%{_bindir}/vi
|
||||||
install -m755 enhanced-vim %{buildroot}%{_bindir}/vim
|
install -m755 enhanced-vim %{buildroot}%{_bindir}/vim
|
||||||
install -m755 gvim %{buildroot}%{_bindir}/gvim
|
install -m755 gvim %{buildroot}%{_bindir}/gvim
|
||||||
install -p -m644 %{SOURCE7} \
|
install -p -m644 %{SOURCE7} \
|
||||||
@ -1322,9 +1514,18 @@ rm -rf %{buildroot}
|
|||||||
%{_datadir}/icons/hicolor/*/apps/*
|
%{_datadir}/icons/hicolor/*/apps/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Wed Aug 6 2014 Tom Callaway <spot@fedoraproject.org> 2:7.4.307-3
|
* Wed Aug 13 2014 Karsten Hopp <karsten@redhat.com> 7.4.402-1
|
||||||
|
- patchlevel 402
|
||||||
|
|
||||||
|
* Tue Aug 12 2014 Karsten Hopp <karsten@redhat.com> 7.4.401-1
|
||||||
|
- patchlevel 401
|
||||||
|
|
||||||
|
* Wed Aug 6 2014 Tom Callaway <spot@fedoraproject.org> 2:7.4.373-2
|
||||||
- fix license handling
|
- fix license handling
|
||||||
|
|
||||||
|
* Tue Jul 22 2014 Karsten Hopp <karsten@redhat.com> 7.4.373-1
|
||||||
|
- patchlevel 373
|
||||||
|
|
||||||
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:7.4.307-2
|
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:7.4.307-2
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user