From def9e829de8bcaf723568e5780c47557e83f99f0 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Fri, 31 Dec 2004 20:58:58 +0000 Subject: updated for version 7.0027 --- src/search.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/search.c') diff --git a/src/search.c b/src/search.c index 6a915e170..1d1bc3b31 100644 --- a/src/search.c +++ b/src/search.c @@ -2367,6 +2367,7 @@ findsent(dir, count) int startlnum; int noskip = FALSE; /* do not skip blanks */ int cpo_J; + int found_dot; pos = curwin->w_cursor; if (dir == FORWARD) @@ -2404,9 +2405,17 @@ findsent(dir, count) decl(&pos); /* go back to the previous non-blank char */ + found_dot = FALSE; while ((c = gchar_pos(&pos)) == ' ' || c == '\t' || (dir == BACKWARD && vim_strchr((char_u *)".!?)]\"'", c) != NULL)) { + if (vim_strchr((char_u *)".!?", c) != NULL) + { + /* Only skip over a '.', '!' and '?' once. */ + if (found_dot) + break; + found_dot = TRUE; + } if (decl(&pos) == -1) break; /* when going forward: Stop in front of empty line */ @@ -3315,7 +3324,7 @@ extend: if (start_blank) --ncount; } - if (ncount) + if (ncount > 0) findsent_forward(ncount, TRUE); else decl(&curwin->w_cursor); -- cgit v1.2.3