diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-03-05 19:44:06 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-03-05 19:44:06 +0100 |
commit | 6b64394f346594404cffb9591d71ac693040679f (patch) | |
tree | 071c5aee49d73707a14ed71834adb1463b59fa44 | |
parent | f411a3c5aff644ec7a999be83ef22adf3e1132dd (diff) | |
download | vim-6b64394f346594404cffb9591d71ac693040679f.zip |
patch 8.0.0423: changing 'cinoptions' does not always work
Problem: The effect of adding "#" to 'cinoptions' is not always removed.
(David Briscoe)
Solution: Reset b_ind_hash_comment. (Christian Brabandt, closes #1475)
-rw-r--r-- | src/Makefile | 1 | ||||
-rw-r--r-- | src/misc1.c | 3 | ||||
-rw-r--r-- | src/testdir/Make_all.mak | 1 | ||||
-rw-r--r-- | src/testdir/test3.in | 3 | ||||
-rw-r--r-- | src/testdir/test_cindent.vim | 16 | ||||
-rw-r--r-- | src/version.c | 2 |
6 files changed, 25 insertions, 1 deletions
diff --git a/src/Makefile b/src/Makefile index 6e7fdde3c..f9453229a 100644 --- a/src/Makefile +++ b/src/Makefile @@ -2104,6 +2104,7 @@ test_arglist \ test_channel \ test_charsearch \ test_changedtick \ + test_cindent \ test_cmdline \ test_command_count \ test_crypt \ diff --git a/src/misc1.c b/src/misc1.c index dce912c40..ec92f0375 100644 --- a/src/misc1.c +++ b/src/misc1.c @@ -6974,6 +6974,9 @@ parse_cino(buf_T *buf) * while(). */ buf->b_ind_if_for_while = 0; + /* indentation for # comments */ + buf->b_ind_hash_comment = 0; + for (p = buf->b_p_cino; *p; ) { l = p++; diff --git a/src/testdir/Make_all.mak b/src/testdir/Make_all.mak index e1ce1518f..b7fb15caf 100644 --- a/src/testdir/Make_all.mak +++ b/src/testdir/Make_all.mak @@ -143,6 +143,7 @@ NEW_TESTS = test_arabic.res \ test_cdo.res \ test_channel.res \ test_charsearch.res \ + test_cindent.res \ test_cmdline.res \ test_command_count.res \ test_crypt.res \ diff --git a/src/testdir/test3.in b/src/testdir/test3.in index e8648d382..9e66436e7 100644 --- a/src/testdir/test3.in +++ b/src/testdir/test3.in @@ -1,6 +1,7 @@ /* vim: set cin ts=4 sw=4 : */ -Test for 'cindent' +Test for 'cindent'. +For new tests, consider putting them in test_cindent.vim. STARTTEST :so small.vim diff --git a/src/testdir/test_cindent.vim b/src/testdir/test_cindent.vim new file mode 100644 index 000000000..5685c2be6 --- /dev/null +++ b/src/testdir/test_cindent.vim @@ -0,0 +1,16 @@ +" Test for cinoptions and cindent +" +" TODO: rewrite test3.in into this new style test + +func Test_cino_hash() + " Test that curbuf->b_ind_hash_comment is correctly reset + new + setlocal cindent cinoptions=#1 + setlocal cinoptions= + call setline(1, ["#include <iostream>"]) + call cursor(1, 1) + norm! o#include + "call feedkeys("o#include\<esc>", 't') + call assert_equal(["#include <iostream>", "#include"], getline(1,2)) + bwipe! +endfunc diff --git a/src/version.c b/src/version.c index 3804bbe89..c956389ce 100644 --- a/src/version.c +++ b/src/version.c @@ -765,6 +765,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 423, +/**/ 422, /**/ 421, |