linux下看代码小帮手--ctags+taglist+自动补全

本文介绍了在Linux环境下如何使用ctags和taglist进行代码跳转,以及如何配置Vim实现自动补全功能。通过安装ctags,创建索引文件,设置Vim的~/.vimrc文件,以及集成YouCompleteMe,提升代码阅读和编辑效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


引言:

如果你在读程序时看了一个函数调用, 或者一个变量,或者一个宏等等, 你想知道它们的定义在哪儿, 怎么办呢?
哈哈,你的困惑也是广大Linux用户的困惑,现在流行用是的【ctrl+]】, 当光标在某个函数或变量上时, 按下"Ctrl+]",光标会自动跳转到其定义处。

下载:

Ubuntu下 执行:  sudo apt-get install ctags

、建立索引文件
 当然要实现跳转就必须要生成tags索引文件才能用我们的ctags帮你干活,
 因为ctags是通过识别tags文件来工作的,tags文件生成在哪个文件夹下,哪个文件夹下的文件就能享受ctags功能。
下面讲tags文件的生成

在你想要建立索引文件的文件夹目录下执行:

sudo ctags -R *

我是在workspace/下执行  sudo ctags -R * 命令的所以tags索引文件就在该文件夹下生成

注意tags文件的生成位置决定了你是否能在你的文件夹下看代码时使用ctags完成跳转功能

 

二、设置索引文件位置

当然我们是通过Vim来查看文件的,所以还需告知vim程序tags文件的位置,即修改vim配置文件~/.vimrc文件


现在可以到workspace文件夹下的随便一个文件里去跳了

ctrl+]    跳转至光标所在对象定义之处
ctrl+t    返回跳转前位置

说到~/.vimrc这里顺便顺便分享一下vim一些配置

set nu "显示行号
synta on "自动语法高亮
set tabstop=4 "tab代表4个空格 
set mouse=a  "开启鼠标模式

taglist下载

wget http://www.vim.org/scripts/download_script.php?src_id=19574 -O taglist.zip

遇到小问题:

             抛错:  “ E492:不是编辑器的命令TlistToggle”

解决:

             将解压taglist时生成的doc,plugin两个文件放在~/.vim文件夹下,没有~/.vim文件的就自己执行mkdir ~/.vim命令再将doc,plugin两个文件夹放到~/.vim下面后重启就ok 了

后续操作参考:大佬链接

三、自动补全功能

 

下载YouCompleteMe会用到GitHub为了避免蜗速下载所以先修改一下自己Ubuntu的hosts文件,再说以后会经常使用到GitHub,修改hosts文件很有必要。首先vim打开hosts文件

sudo vim /etc/hosts

用浏览器访问 IPAddress.com or http://tool.chinaz.com 使用 IP Lookup 工具获得github.com和github.global.ssl.fastly.net域名的ip地址,然后在vi打开的hosts文件中添加如下格式,wq保存退出。

注意:因为这些IP都是过一段时间会发生变化的,所以如果很长一段时间没有使用github了,最好先查IP修改host文件

192.30.253.112(查询到的IP) github.com(github域名)
151.101.44.249(查询到的IP) github.global.ssl.fastly.net(github域名)

步骤:同样的先下载YouCompleteMe再将YouCompleteMe路径告诉vim就可以用自动补全功能了


下载YouCompleteMe参考博文

备注一下:上面博文执行命令./install.py --clang-completer 有的版本会受限制,我的是ubuntu1604不会抛错,但ubuntu1404会抛错:

your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found.  

Please set CMAKE_CXX_COMPILER to a valid compiler path or name.

解决

sudo apt-get install g++

最后生成YouCompleteMe文件夹后别忘了在~/.vimrc文件中告诉vim程序YouCompleteMe所在路径了,

我这里路径是/home/google/YouCompleteMe

vim打开 ~/.vimrc文件添加下面格式命令保存退出,然后就可以下课了。

set runtimepath+=/home/google/YouCompleteMe(YouCompleteMe文件夹的路径)

我用的vim配置文件一般是这个:https://github.com/ubunt1404/vim_attribution_setting/blob/master/vimrc

要用的话克隆下按照这篇博文安装一些东西,再改一改里面的路径(YoucompleteMe 和 tags)基本就可以用了,

如果是ubuntu1404的系统的话就墙裂推荐这位老哥的https://blog.youkuaiyun.com/zhang_han666/article/details/80265254,试过几次都是OK的

效果图如下: 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值