Richard Kojedzinszky writes:
Hi, I've noticed the bug also, and here is another patch for it. I hope it'll not introduce more bugs. Not too nice, but works for me. Here it is for busybox-1.00-pre6
This commit is contained in:
parent
ef43749e83
commit
aeea32ca69
13
editors/vi.c
13
editors/vi.c
@ -19,7 +19,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
static const char vi_Version[] =
|
static const char vi_Version[] =
|
||||||
"$Id: vi.c,v 1.31 2004/01/21 10:59:45 bug1 Exp $";
|
"$Id: vi.c,v 1.32 2004/02/04 11:19:44 andersen Exp $";
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* To compile for standalone use:
|
* To compile for standalone use:
|
||||||
@ -1669,10 +1669,13 @@ static Byte find_range(Byte ** start, Byte ** stop, Byte c)
|
|||||||
q = dot;
|
q = dot;
|
||||||
} else if (strchr("wW", c)) {
|
} else if (strchr("wW", c)) {
|
||||||
do_cmd(c); // execute movement cmd
|
do_cmd(c); // execute movement cmd
|
||||||
// if we are at the next word's first char
|
// if we are at the next word's first char
|
||||||
// step back one char
|
// step back one char
|
||||||
if (dot > text && isspace(dot[-1]))
|
// but check the possibilities when it is true
|
||||||
dot--; // move back off of next word
|
if (dot > text && ((isspace(dot[0]) && !isspace(dot[0]))
|
||||||
|
|| (ispunct(dot[-1]) && !ispunct(dot[0]))
|
||||||
|
|| (isalnum(dot[-1]) && !isalnum(dot[0]))))
|
||||||
|
dot--; // move back off of next word
|
||||||
if (dot > text && *dot == '\n')
|
if (dot > text && *dot == '\n')
|
||||||
dot--; // stay off NL
|
dot--; // stay off NL
|
||||||
q = dot;
|
q = dot;
|
||||||
|
Loading…
Reference in New Issue
Block a user