拓展2|C 程序员的 Vim 工作环境:C 代码的搜索、提示和自动完成
该思维导图由 AI 生成,仅供参考
语法加亮精调
- 深入了解
- 翻译
- 解释
- 总结
本文介绍了C程序员在Vim工作环境下的定制化配置和工具的使用。作者详细讨论了对C代码进行语法加亮的精细调整,包括标记空格错误、激活GNU扩展、不对格式化字符串进行加亮等设置。此外,作者介绍了tags文件的生成和更新方法,以及如何在Vim中自动运行ctags命令。作者还推荐了EchoFunc插件,用于回显函数的原型,并提供了安装和配置方法。另外,Cscope工具用于代码搜索和定位,包括查找符号的定义和引用、函数调用的函数和调用该函数的函数等功能。文章内容涵盖了C程序员在Vim环境下的代码搜索、提示和自动完成等方面的定制化配置和工具使用,对于C程序员和使用类C语言的开发者都具有实用价值。 ClangComplete插件也被介绍,它在Vim中添加了对C/C++代码的自动完成功能。虽然作者更推荐YouCompleteMe插件,但ClangComplete在某些环境里安装起来更加简单,因此也是一个后备方案。总的来说,本文内容涵盖了C程序员在Vim环境下的代码搜索、提示和自动完成等方面的定制化配置和工具使用,为读者提供了丰富的技术内容和实用价值。
《Vim 实用技巧必知必会》,新⼈⾸单¥59
全部留言(10)
- 最新
- 精选
- 谁家内存泄露了吴老师,你好,我有两个问题: 1 cscope有时候找不到一些c++文件的函数(我执行的命令为:cscope -Rbq)? 2 我有一部分的工作场景是需要用yocto去构建整个Linux的镜像,而且大部分的语言会用的是c++,基于问题1,可能cscope不是万能的,再考虑ycm又需要导出cmake的compile_commands.json文件,这个不清楚怎么在yocto下导出来。。。 基于以上描述,吴老师有什么建议吗?
作者回复: cscope 对 C++ 支持不好,可以先放弃。YCM 需要配置,没办法,只能自己想办法搞出配置,毕竟只是文本文件,花点力气也总是可以的。否则就只能将就使用 Universal Ctags 和 grep。
2022-09-18归属地:上海32 - 我来也如果能早几年看到这系列文章,我正式切换到vim开发的时间也许会提前几年了. 我的vim定制始于这篇文章 [手把手教你把Vim改装成一个IDE编程环境(图文)](https://blog.csdn.net/wooin/article/details/1858917) 虽然这篇文章写于2007年,但我看到时应该也是12年了. 当时即使是照着文章把插件都装好了,也花了不少功夫. 搞完后,我对vim真是有了新的认识.原来还可以这么用. 当时有些配置我并没有调通. 不知是自己配置错误,还是文章中插件的配置发生了变化. 但周边也没有可以交流的人. 导致真正完全用vim做开发并不是很顺手. 我就用vim做c代码的查看器,用它去跳转,搜索,对比, 偶尔用它完成小的bug修复.
作者回复: 有Vim的中文和英文邮件列表的。不过现在都不活跃了。尤其中文的。
2020-08-242 - 大敏请教一下大神,如果工程代码是,C/C++ 混合代码,ctags参数该如何选择呢?
作者回复: .h 应该当 C++ 处理(默认似乎就是),其他没什么变化。 对于现代 C++ 代码,需要上 Universal Ctags。老的 Ctags 问题太多。
2023-08-15归属地:广东 - Alex学到目前阶段,感觉吴老师真是实打实的布道者,我也是守旧之人,只喜欢Linux、vim、c,其余的真心不想碰
作者回复: 谢谢。 编辑器环境习惯了不换算正常。语言上还是建议不要拘泥。我主要用 C++(不是 C),但我也很喜欢 Python 的。对于不在乎运行性能的场景,开发效率高得多了。
2021-09-25 - Yabo插件 ludovicchabant/vim-gutentags,跳转链接不对,应该是 https://github.com/ludovicchabant/vim-gutentags
作者回复: 谢谢。目前已经纠正。
2020-11-18 - chriscscope不支持c++的话, 请问如何用vim打造一个c++开发环境呢?
作者回复: 继续往下阅读啊……
2020-11-02 - chris老师能否讲解一下ctags的-D和-I参数阿? 另外Cscope好像也能支持c++的是吗?
作者回复: 前者看文档就可以了,有什么不清楚吗?如果有的话,我可以帮助解答。 Cscope 对C++ 的支持不行,基本认为不适用于 C++ 吧。
2020-11-01 - AirY感觉对rust需要不友好,没有提示,python的话也得.出来而且还有很小的延迟才出来,
作者回复: 安装了Rust的引擎了吗? 默认自动完成需要按“.”,但文中我提了可以自己配完成键的(文中用了 Ctrl-Z)。
2020-08-263 - Albert老师,您好。想买一本关于vim的书。看了一下有精通vim、vim8文本处理实战、vim实用技巧 2版。能推荐一下选哪本吗?或者有其他推荐吗?
作者回复: 学完这个专栏,我觉得进一步学习主要是拓展技巧,知识体系根据实际的需要查手册就可以。从这个角度,我会推荐《Vim实用技巧》。 当然,每本书都有点独到之处的。三择一的话是这本,有余力的话,其他的也可以看看。
2020-08-24 - qinsi查了下Vim8的话应该可以通过LSP实现跳转自动完成和格式化等功能 https://microsoft.github.io/language-server-protocol/implementors/tools/
作者回复: 下一讲的工具内部就会用到的。
2020-08-24