gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-04 11:30:15 25 4
gpt4 key购买 nike

有什么方法可以为 typedef 定义的新类型添加语法着色吗? C中的语句?

typedef struct {
int a,b;
} MyStruct;

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

如果 native 不可能(我猜是这样),是否有任何插件可以使此视觉线索起作用?

最佳答案

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

语法.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

关于vim - 将定义的类型着色为类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5827517/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com