在VIM中,如何突出显示用户定义的数据类型?

时间:2019-02-14 07:33:07

标签: vim

当我使用C语言时,经常使用typedef。 例如,

typedef struct man{
    char *head;
    char *body;
    ...
}MAN_t,*MAN_p_t;

我真的希望MAN_tMAN_p_t在vim中作为新的数据类型突出显示。

如何制作?

我无法在线找到可行的解决方案。 有人使用match Type /\w*_t/,但这会使所有以_t结尾的变量结束。

我想知道有没有办法让vim检测typedef struct ...{...}之后的单词。 什么是正则表达式?

1 个答案:

答案 0 :(得分:1)

我将*_f*_t突出显示为cType

只需将其添加到.vim / syntax / c.vim

syn match cType "\<[a-zA-Z_][a-zA-Z0-9_]*_[ft]\>" 

如果您只想*_t

syn match cType "\<[a-zA-Z_][a-zA-Z0-9_]*_[t]\>"