【工具】VS Code使用global插件实现代码跳转

  • 🐚作者简介:花神庙码农(专注于Linux、WLAN、TCP/IP、Python等技术方向)
  • 🐳博客主页:花神庙码农 ,地址:https://blog.csdn.net/qxhgd
  • 🌐系列专栏:善假于物
  • 📰如觉得博主文章写的不错或对你有所帮助的话,还望大家三连支持一下呀!!! 👉关注✨、点赞👍、收藏📂、评论。
  • 如需转载请参考转载须知!!

VS Code上安装GNU Global插件安装

  • 安装C/C++ GNU Global插件:
    在这里插入图片描述

主机上安装GNU Global工具

Windows系统

  • 可直接从附录网站下载
  • 注:需将global的bin路径添加到系统环境变量Path中。

Linux环境,

  • 可通过源码安装:
# 安装编译环境 
sudo yum groupinstall -y "Development Tools" 
sudo yum install -y ncurses-devel # 
#下载tar包
wget https://ftp.gnu.org/pub/gnu/global/global-6.6.10.tar.gz
# 解压tar包 
tar -zxvf global-6.6.10.tar.gz 
# 编译安装 
cd global-6.6.10 
./configure 
make 
sudo make install
  • 或通过类似下面命令进行安装:
sudo apt install global
sudo yum install global
  • 安装后,可通过下面命令确认安装结果及版本号:
gtags --version

VS Code的配置

找到global和gtags的位置

  • 对于Windows系统,安装的时候可以选择的的;
  • 对于Linux系统,可利用下面命令查看:
which global
which is global

修改setting.json文件

  • 根据上一步的路径,修改配置文件。
  • 对Linux系统:
"gnuGlobal.globalExecutable": "/usr/bin/global",
"gnuGlobal.gtagsExecutable": "/usr/bin/gtags", 
"gnuGlobal.encoding": "Big5",
  • 对Windows系统:
{
    "gnuGlobal.globalExecutable": "C:\\global\\global.exe",
    "gnuGlobal.gtagsExecutable": "C:\\global\\gtags.exe"
    "gnuGlobal.encoding": "Big5",
}

使用global

利用VS Code

  • 先按F1,键入Global: Show GNU Global Version,确认是否正确安装及版本号;
  • 再按F1,输入Global:Rebuild Gtags Database(此时更新的是在vscode打开得所有文件夹),执行完后,会生成三个文件:GTAGS、GRTAGS、GPATH(这三个文件是Global 的tag文件,GTAGS是定义的数据库,GRTAGS是引用的数据库,GPATH是路径的数据库)。
  • tag文件生成成功后,F12查找函数定义可直接跳转。
  • 如果代码频繁更新,则增加gnuGlobal.autoUpdate为true即可。

利用gtags、global命令

# 切到代码目录
cd xxxx

# 使用gnu global建立索引(生成这三个文件:GTAGS、GRTAGS、GPATH)
gtags

# 打开vscode
code .

# 修改代码后,更新索引,则执行
gtags -i   #Update tag files incrementally.
globals -u #Update tag files incrementally.

# 根据命令行查询,执行:
## 函数相关
global -x xx #[查询xx函数,要求完整名称,如函数名]
global -c xx #[查询xx开头的函数名,如无,则列出所有函数名]
global -x xx --color #[查询xx开头的函数,如无,则列出所有函数名]
global -x '^Create.*File' --color#[模糊查找,满足正则表达式Create.*File的函数]

##字面量相关
global -g "connected faild"  src/xxx_func.c  #[在xxx_func.c文件中查找connected faild字符串]

# 命令帮助
global --help
gtags  --help

参考资料

  • Windows地址下载:http://adoxa.altervista.org/global/
  • Linux系统下载:https://ftp.gnu.org/pub/gnu/global/global-6.6.10.tar.gz
  • global官网:https://www.gnu.org/software/global/
  • VS Code global插件:https://marketplace.visualstudio.com/items?itemName=jaycetyle.vscode-gnu-global

如本文对你有些许帮助,欢迎大佬支持我一下,您的支持是我持续创作的不竭动力
支持我的方式

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

花神庙码农

你的鼓励是我码字的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值