vim – 将定义的类型着色为类型

前端之家收集整理的这篇文章主要介绍了vim – 将定义的类型着色为类型前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有办法为C语言中使用typedef语句定义的新类型添加语法着色?
typedef struct {
    int a,b;
} MyStruct;

MyStruct *InitMyStruct(MyStruct *struct,int a,int b);
    ^         ^           ^               ^      ^
    +---------+-----------+               +------+
    Same Color                             Correct type color

如果它本身不可能(我猜是这样),是否有任何插件可以使这个视觉线索工作?

我在Vim的帮助下找到了我问题的确切解决方案,我将在此发布,以防将来有人需要.这正是我想要的:一种阅读代码并相应地突出显示它的方法.

Syntax.txt

第15节:突出显示标签

[...]
Only highlighting typedefs,unions and structs can be done too.  For this you
must use Exuberant ctags (found at http://ctags.sf.net).

Put these lines in your Makefile:

# Make a highlight file for types.  Requires Exuberant ctags and awk
types: types.vim
types.vim: *.[ch]
        ctags --c-kinds=gstu -o- *.[ch] |\
                awk 'BEGIN{printf("Syntax keyword Type\t")}\
                        {printf("%s ",$$1)}END{print ""}' > $@

And put these lines in your .vimrc: >

   " load the types.vim highlighting file,if it exists
   autocmd BufRead,BufNewFile *.[ch] let fname = expand('<afile>:p:h') . '/types.vim'
   autocmd BufRead,BufNewFile *.[ch] if filereadable(fname)
   autocmd BufRead,BufNewFile *.[ch]   exe 'so ' . fname
   autocmd BufRead,BufNewFile *.[ch] endif

猜你在找的Bash相关文章