0
0
mirror of https://github.com/vim/vim.git synced 2025-09-28 04:24:06 -04:00

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)
This commit is contained in:
Bram Moolenaar
2017-03-05 19:44:06 +01:00
parent f411a3c5af
commit 6b64394f34
6 changed files with 25 additions and 1 deletions

View File

@@ -2104,6 +2104,7 @@ test_arglist \
test_channel \
test_charsearch \
test_changedtick \
test_cindent \
test_cmdline \
test_command_count \
test_crypt \

View File

@@ -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++;

View File

@@ -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 \

View File

@@ -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

View File

@@ -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

View File

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