vim自动更新ctags与taglist

news/2024/7/21 15:16:09 标签: vim, 编辑器, linux

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

function! UpdateCtags()
    let curdir=getcwd()
    while !filereadable("./tags")
        cd ..
        if getcwd() == "/"
            break
        endif
    endwhile
    if filewritable("./tags")
        !ctags -R --file-scope=yes --langmap=c:+.h --languages=c,c++ --links=yes --c-kinds=+p --c++-kinds=+p --fields=+iaS --extra=+q
        TlistUpdate
    endif
    execute ":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.niftyadmin.cn/n/327617.html

相关文章

【Linux】Linux编辑器-gcc/g++使用

目录 一、背景知识 二、gcc是如何完成的 1、预处理(进行宏替换) 2、编译(生成汇编) 3、汇编(生成机器可识别代码) 4、链接(生成可执行文件或库文件) 4.1、静态库 4.2、动态库 4.3、动静态库的比较 三、gcc常见的选项 一、背景知识 计算机是二进制读取文件的&#xff0c;我们…

环境编程代码实例:进程间通信(IPC)

文章目录 前言代码仓库内容全局变量头文件全局变量源文件全局变量 文件PV操作数据库缓存管道命名管道信号信号量XSI信号量POSIX信号量 消息队列/mq共享内存/shm套接字/sock内存映射 代码说明目录结构 持续更新总结参考资料作者的话 前言 环境编程代码实例&#xff1a;进程间通…

Java基础(40)反射机制

Java反射机制是 Java 语言的一个重要特性。先了解两个概念&#xff0c;编译期和运行期。编译期是指把源码交给编译器编译成计算机可以执行的文件的过程。在 Java 中也就是把 Java 代码编成 class 文件的过程。编译期只是做了一些翻译功能&#xff0c;并没有把代码放在内存中运行…

altium Designer22 AD22 CAD电子绘图员三级知识点操作说明

文章目录 AD22一、解决局域网中多台电脑冲突&#xff1a;禁用license的网络功能二、添加库文件三、库的使用四、库绘制1、原理图库绘制2、PCB封装库绘制 五、动态标题栏六、原理图模板的使用七、层次电路图设计1、在母图上放置页面符2、给sheet symbol添加Entry,名字与子图原理…

【k8s概念】一文搞懂k8s核心概念,吐血整理~两万字~!!!

文章目录 1. k8s简介1.1 k8s概念1.2 作用/功能 2. k8s集群搭建方式3. k8s核心组件3.1 Master Node&#xff08;控制平面组件&#xff09;3.2 Worker Node 4. k8s核心概念4.1 容器4.2 工作负载——Pod4.3 Pod控制器4.3.1 ReplicationController(RC)4.3.2 ReplicaSet(RS)4.3.3 De…

如何在 FPGA 中做数学运算

FPGA 非常适合进行数学运算&#xff0c;但是需要一点技巧&#xff0c;所以我们今天就看看如何在 FPGA 中进行简单和复杂的数学运算。 介绍 由于FPGA可以对算法进行并行化&#xff0c;所以FPGA 非常适合在可编程逻辑中实现数学运算。我们可以在 FPGA 中使用数学来实现信号处理、…

生态伙伴 | 硬创大赛新起航!携手华强科创广场,助力硬科技创业者

01 大赛介绍 中国硬件创新创客大赛始于2015年&#xff0c;由深圳华秋电子有限公司主办&#xff0c;至今已经成功举办八届&#xff0c;赛事范围覆盖华南、华东、华北三大地区&#xff0c;超10个省市区域。 大赛影响了超过45万工程师群体&#xff0c;吸引了35000多名硬创先锋报…

少儿编程 中国电子学会图形化编程等级考试Scratch编程二级真题解析(判断题)2023年3月

2023年3月scratch编程等级考试二级真题 判断题(共10题,每题2分,共20分) 26、执行完这段程序后,可以在舞台上画出一个正方形 答案:错 考点分析:考查积木综合使用,重点考查画笔积木的使用,从程序中可以看出落笔是在最后,所以在落笔之前绘制的图形是不会显示出来,没…