1
0
forked from aniani/vim

updated for version 7.3.235

Problem:    ";" gets stuck on a "t" command, it's not useful.
Solution:   Add the ';' flag in 'cpo'. (Christian Brabandt)
This commit is contained in:
Bram Moolenaar
2011-06-26 05:36:34 +02:00
parent 20892c1e68
commit 8b3e0330ba
13 changed files with 58 additions and 14 deletions

View File

@@ -169,10 +169,12 @@
#define CPO_SUBPERCENT '/' /* % in :s string uses previous one */
#define CPO_BACKSL '\\' /* \ is not special in [] */
#define CPO_CHDIR '.' /* don't chdir if buffer is modified */
#define CPO_SCOLON ';' /* using "," and ";" will skip over char if
* cursor would not move */
/* default values for Vim, Vi and POSIX */
#define CPO_VIM "aABceFs"
#define CPO_VI "aAbBcCdDeEfFgHiIjJkKlLmMnoOpPqrRsStuvwWxXyZ$!%*-+<>"
#define CPO_ALL "aAbBcCdDeEfFgHiIjJkKlLmMnoOpPqrRsStuvwWxXyZ$!%*-+<>#{|&/\\."
#define CPO_VI "aAbBcCdDeEfFgHiIjJkKlLmMnoOpPqrRsStuvwWxXyZ$!%*-+<>;"
#define CPO_ALL "aAbBcCdDeEfFgHiIjJkKlLmMnoOpPqrRsStuvwWxXyZ$!%*-+<>#{|&/\\.;"
/* characters for p_ww option: */
#define WW_ALL "bshl<>[],~"

View File

@@ -1546,6 +1546,7 @@ searchc(cap, t_cmd)
int col;
char_u *p;
int len;
int stop = TRUE;
#ifdef FEAT_MBYTE
static char_u bytes[MB_MAXBYTES];
static int bytelen = 1; /* >1 for multi-byte char */
@@ -1580,6 +1581,12 @@ searchc(cap, t_cmd)
t_cmd = last_t_cmd;
c = lastc;
/* For multi-byte re-use last bytes[] and bytelen. */
/* Force a move of at least one char, so ";" and "," will move the
* cursor, even if the cursor is right in front of char we are looking
* at. */
if (vim_strchr(p_cpo, CPO_SCOLON) == NULL && count == 1)
stop = FALSE;
}
if (dir == BACKWARD)
@@ -1612,14 +1619,15 @@ searchc(cap, t_cmd)
}
if (bytelen == 1)
{
if (p[col] == c)
if (p[col] == c && stop)
break;
}
else
{
if (vim_memcmp(p + col, bytes, bytelen) == 0)
if (vim_memcmp(p + col, bytes, bytelen) == 0 && stop)
break;
}
stop = TRUE;
}
}
else
@@ -1629,8 +1637,9 @@ searchc(cap, t_cmd)
{
if ((col += dir) < 0 || col >= len)
return FAIL;
if (p[col] == c)
if (p[col] == c && stop)
break;
stop = TRUE;
}
}
}

View File

@@ -28,7 +28,8 @@ SCRIPTS = test1.out test3.out test4.out test5.out test6.out \
test61.out test62.out test63.out test64.out test65.out \
test66.out test67.out test68.out test69.out test70.out \
test71.out test72.out test73.out test74.out test75.out \
test76.out test77.out test78.out test79.out test80.out
test76.out test77.out test78.out test79.out test80.out \
test81.out
.SUFFIXES: .in .out
@@ -128,3 +129,4 @@ test77.out: test77.in
test78.out: test78.in
test79.out: test79.in
test80.out: test80.in
test81.out: test81.in

View File

@@ -29,7 +29,7 @@ SCRIPTS = test3.out test4.out test5.out test6.out test7.out \
test42.out test52.out test65.out test66.out test67.out \
test68.out test69.out test71.out test72.out test73.out \
test74.out test75.out test76.out test77.out test78.out \
test79.out test80.out
test79.out test80.out test81.out
SCRIPTS32 = test50.out test70.out

View File

@@ -49,7 +49,7 @@ SCRIPTS = test3.out test4.out test5.out test6.out test7.out \
test42.out test52.out test65.out test66.out test67.out \
test68.out test69.out test71.out test72.out test73.out \
test74.out test75.out test76.out test77.out test78.out \
test79.out test80.out
test79.out test80.out test81.out
SCRIPTS32 = test50.out test70.out

View File

@@ -28,7 +28,8 @@ SCRIPTS = test1.out test3.out test4.out test5.out test6.out \
test61.out test62.out test63.out test64.out test65.out \
test66.out test67.out test68.out test69.out test70.out \
test71.out test72.out test73.out test74.out test75.out \
test76.out test77.out test78.out test79.out test80.out
test76.out test77.out test78.out test79.out test80.out \
test81.out
.SUFFIXES: .in .out

View File

@@ -4,7 +4,7 @@
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
#
# Last change: 2011 Jun 19
# Last change: 2011 Jun 26
#
# 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.
@@ -75,7 +75,7 @@ SCRIPT = test1.out test2.out test3.out test4.out test5.out \
test61.out test62.out test63.out test64.out test65.out \
test66.out test67.out test68.out test69.out \
test71.out test72.out test74.out test75.out test76.out \
test77.out test78.out test79.out test80.out
test77.out test78.out test79.out test80.out test81.out
# Known problems:
# Test 30: a problem around mac format - unknown reason

View File

@@ -26,7 +26,7 @@ SCRIPTS = test1.out test2.out test3.out test4.out test5.out test6.out \
test64.out test65.out test66.out test67.out test68.out \
test69.out test70.out test71.out test72.out test73.out \
test74.out test75.out test76.out test77.out test78.out \
test79.out test80.out
test79.out test80.out test81.out
SCRIPTS_GUI = test16.out

18
src/testdir/test81.in Normal file
View File

@@ -0,0 +1,18 @@
Test for t movement command and 'cpo-;' setting
STARTTEST
:set nocompatible
:set cpo-=;
/firstline/
j0tt;D
$Ty;D:set cpo+=;
j0tt;;D
$Ty;;D:?firstline?+1,$w! test.out
:qa!
ENDTEST
firstline
aaa two three four
bbb yee yoo four
ccc two three four
ddd yee yoo four

4
src/testdir/test81.ok Normal file
View File

@@ -0,0 +1,4 @@
aaa two
bbb y
ccc
ddd yee y

View File

@@ -709,6 +709,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
235,
/**/
234,
/**/