当前位置: 首页 > news >正文

vim自动更新ctags与taglist

vim的 ctags 和 taglist 在默认情况下是不进行自动更新的,这对于编写代码是非常不方便的,好在vim的脚本还是很强大的,于是在vimrc中添加如下函数:

function! UpdateCtags()let curdir=getcwd()while !filereadable("./tags")cd ..if getcwd() == "/"breakendifendwhileif filewritable("./tags")!ctags -R --file-scope=yes --langmap=c:+.h --languages=c,c++ --links=yes --c-kinds=+p --c++-kinds=+p --fields=+iaS --extra=+qTlistUpdateendifexecute ":cd " . curdir
endfunction

接下来,可以使用键盘映射的方式调用这个更新函数:

nmap <F10> :call UpdateCtags()<CR>

 
也可以在vim保存文件时自动更新:
autocmd BufWritePost *.c,*.h,*.cpp call UpdateCtags()

这两种方式用哪种都OK,自动保存可能会发生一些性能上的不爽,键盘映射按多了也烦。

原文地址:

http://www.linuxbar.cn/vim%E8%87%AA%E5%8A%A8%E6%9B%B4%E6%96%B0ctags%E4%B8%8Etaglist/

http://www.lryc.cn/news/68705.html

相关文章:

  • linux查看日志常用命令,动态日志命令
  • 分段存储管理方式
  • 将nacos从本地切换到远程服务器上时报错:客户端端未连接,Client not connected
  • 系统掌握入河排污口设置论证技术、方法及报告编制框架
  • 服务端渲染
  • 干货丨警惕!14个容易导致拒稿的常见错误
  • Web基础 ( 二 ) CSS
  • MSQL系列(一) Mysql实战-索引结构 二叉树/平衡二叉树/红黑树/BTree/B+Tree
  • 理论力学专题:张量分析
  • 索引失效情况
  • pv操作练习题
  • 【小菜鸡刷题记】--字符串篇
  • Sonar加入jenkins流水线
  • FSW26现金回收RS FSW43 信号和频谱分析仪
  • GraphPad Prism 9.5.1 for Mac 操作简便功能强大且实用的医学绘图分析工具
  • 六. Activity启动模式
  • 本机连接aws的ec2时报错:所选用户的用户密钥未在远程主机上注册
  • 谁看见我的猫照片了
  • 数据结构与算法之深度优先算法详解
  • C# 给winfrom窗体添加皮肤控件
  • 数据分析真的很火吗?真的有很多企业需要这样的岗位吗?求大佬指点。
  • 100 个 Go 错误以及如何避免:9~12
  • 用户/用户组管理
  • 如何进行TCP抓包调试?
  • 分享一个国内可用的ChatGPT网站,免费无限制,支持AI绘画 - AI 百晓生
  • API安全性的要素与开发人员必修课测试
  • leetcode 651. 4键键盘
  • Python垃圾回收机制
  • Grafana插件安装并接入zabbix数据源(03)
  • 简述 JavaScript 中 prototype