diff options
author | Bram Moolenaar <Bram@vim.org> | 2012-06-13 14:01:41 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2012-06-13 14:01:41 +0200 |
commit | e04a48f20413f3f926d26394fad6431795348af7 (patch) | |
tree | 24168dd25a64d6e0df9cb21bdb0695070f38c5cb | |
parent | 48d279215f08667ccfa243afe874ef93e228dd57 (diff) | |
download | vim-git-e04a48f20413f3f926d26394fad6431795348af7.tar.gz |
updated for version 7.3.550v7.3.550
Problem: With "j" in 'formatoptions' a list leader is not removed. (Gary
Johnson)
Solution: Don't ignore the start of a three part comment. (Lech Lorens)
-rw-r--r-- | src/ops.c | 9 | ||||
-rw-r--r-- | src/testdir/test29.in | 23 | ||||
-rw-r--r-- | src/testdir/test29.ok | 2 | ||||
-rw-r--r-- | src/version.c | 2 |
4 files changed, 29 insertions, 7 deletions
@@ -4250,15 +4250,13 @@ skip_comment(line, process, include_space, is_comment) return line; /* Find: - * - COM_START, * - COM_END, * - colon, * whichever comes first. */ while (*comment_flags) { - if (*comment_flags == COM_START - || *comment_flags == COM_END + if (*comment_flags == COM_END || *comment_flags == ':') { break; @@ -4267,9 +4265,8 @@ skip_comment(line, process, include_space, is_comment) } /* If we found a colon, it means that we are not processing a line - * starting with an opening or a closing part of a three-part - * comment. That's good, because we don't want to remove those as - * this would be annoying. + * starting with a closing part of a three-part comment. That's good, + * because we don't want to remove those as this would be annoying. */ if (*comment_flags == ':' || *comment_flags == NUL) line += lead_len; diff --git a/src/testdir/test29.in b/src/testdir/test29.in index cf24642d5..2df2f7077 100644 --- a/src/testdir/test29.in +++ b/src/testdir/test29.in @@ -103,12 +103,15 @@ if (condition) // Remove the next comment leader! STARTTEST /^{/+1 -:set comments=s1:/*,mb:*,ex:*/,:// +:set comments=sO:*\ -,mO:*\ \ ,exO:*/ +:set comments+=s1:/*,mb:*,ex:*/,:// :set comments+=s1:>#,mb:#,ex:#<,:< :set cpoptions-=j joinspaces fo=j :set backspace=eol,start :.,+3join j4J +:.,+8join +j9J :.,+2join j3J :.,+2join @@ -132,6 +135,24 @@ ENDTEST * Make sure the previous comment leader is not removed. */ +/* List: + * - item1 + * foo bar baz + * foo bar baz + * - item2 + * foo bar baz + * foo bar baz + */ + +/* List: + * - item1 + * foo bar baz + * foo bar baz + * - item2 + * foo bar baz + * foo bar baz + */ + // Should the next comment leader be left alone? // Yes. diff --git a/src/testdir/test29.ok b/src/testdir/test29.ok index a5546abe8..902d52f49 100644 --- a/src/testdir/test29.ok +++ b/src/testdir/test29.ok @@ -66,6 +66,8 @@ if (condition) // Remove the next comment leader! OK, I will. { /* Make sure the previous comment leader is not removed. */ /* Make sure the previous comment leader is not removed. */ +/* List: item1 foo bar baz foo bar baz item2 foo bar baz foo bar baz */ +/* List: item1 foo bar baz foo bar baz item2 foo bar baz foo bar baz */ // Should the next comment leader be left alone? Yes. // Should the next comment leader be left alone? Yes. /* Here the comment leader should be left intact. */ // And so should this one. diff --git a/src/version.c b/src/version.c index 1e5d5cdb0..e3abb957c 100644 --- a/src/version.c +++ b/src/version.c @@ -715,6 +715,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 550, +/**/ 549, /**/ 548, |