On Mon, Feb 21, 2011 at 5:18 PM, Ben Schmidt
<[email protected]>wrote:

>  On Mon, Feb 21, 2011 at 4:56 PM, Ben Schmidt <
>> [email protected]
>> <mailto:[email protected]>> wrote:
>>
>>        If you only concern about the semicolon after if statements,
>>        you can try add following to your vimrc file:
>>
>>        autocmd BufEnter *.c match Grp_semi /if\s*(.\+)\s*;/
>>        highlight Grp_semi guibg=red
>>
>>        This will highlight the if statement with red background if he put
>>        semicolon after
>>        a if statement.
>>
>>
>>    Except it will also catch things like this:
>>
>>    if (whatever) something();
>>
>>    which you almost certainly don't want, and why I didn't suggest this
>>    kind of approach.
>>
>> Yes, we can change it to this:
>>
>> autocmd BufEnter *.c match Grp_semi /if\s*([^)]\+)\s*;/
>> highlight Grp_semi guibg=red
>>
>
> Which will then not work on something like this:
>
> if ((ch=getchar())==EOF) ;
>
> (or anything with nested parentheses).
>
>
It seems it's not easy to find a simple way to match all the case.
Maybe use following is fine, it will give false warning if use write 2
statements in the same line .

autocmd BufEnter *.c match Grp_semi /if\s*(.\+)\s*;/
highlight Grp_semi guibg=red

Michael

-- 
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

Reply via email to