登录
C/C++ GNU Global
分类:工具软件 访问:1 下载量:0

软件介绍

更新时间:2025-04-27

介绍:

C/C GNU Global

C/C++ GNU Global:Intellisense开发工具

C/C++ GNU Global是一款基于GNU Global(≥6.5)的扩展工具,为C/C++开发者提供Intellisense功能,提升开发效率。该扩展是从C/C++ Intellisense分叉/重写的,目前仍处于初步阶段。如遇到问题,请访问Github Issues进行问题报告和功能请求。

使用方法:

  • 需要GNU Global(≥6.5),可从官方网站下载二进制文件。Ubuntu 18.04及以上用户可通过apt安装:

    sudo apt install global
  • 将global可执行文件的文件夹添加到PATH环境变量中,或指定gnuGlobal.globalExecutable和gnuGlobal.gtagsExecutable配置。对于Windows用户,建议使用WSL:

    {
        "gnuGlobal.globalExecutable": "C:\\global\\global.exe",
        "gnuGlobal.gtagsExecutable": "C:\\global\\gtags.exe"
    }
  • GNU Global是一个标记系统,没有后台运行的语言服务。需要按F1并执行“Global: Rebuild Gtags Database”来生成标记文件,才能使用其他功能。

  • 如果使用非UTF8的Windows,需指定输出编码。支持的编码可参考https://github.com/ashtuchkin/iconv-lite/wiki/Supported-Encodings。例如,传统中文Windows使用Big5:

    {
        "gnuGlobal.encoding": "Big5"
    }

C用户注意事项:

  • 从GNU Global 6.6.5开始,内置的C解析器已被弃用。请参考GNU Global的发布说明。尽管该扩展对大型C项目(如Linux内核源码)仍然有用,但对于C项目,可能需要寻找其他解决方案,如gtags的插件解析器。

命令:

  • Global: Rebuild Gtags Database:通过运行'gtags'生成标记文件。保存代码后,该扩展会尝试通过运行'global -u'增量更新标记文件。如果自动更新效果不佳,可手动运行此命令重建所有标记文件。建议将GTAGS、GRTAGS和GPATH添加到全局gitignore设置中。

  • Global: Show GNU Global Version:通过运行'global --version'显示global版本。

  • 转到定义(F12)查找所有引用(Shift F12)转到文件中的符号(Ctrl Shift O)

配置:

  • gnuGlobal.encoding:指定命令行输出的编码。支持的编码请参考https://github.com/ashtuchkin/iconv-lite/wiki/Supported-Encodings。

  • gnuGlobal.autoUpdate:控制是否在文件保存后自动更新标记。可选项为Enabled、Disabled和Default。默认情况下,如果GTAGS数据库大小超过50MB,则禁用自动更新。对于大型项目,建议禁用此功能。

  • gnuGlobal.completion:启用/禁用自动完成功能。默认启用。

  • gnuGlobal.gtagsForceCpp:在GNU Global 6.6.6中已弃用。如果使用插件解析器,请勿设置此变量。启用此选项时,后缀为".h"的文件将被视为C源文件。更改此配置后需重建标记。默认禁用。

  • gnuGlobal.libraryPath:用于搜索库函数的路径。如果在项目中未找到指定的标记,该扩展还会在此路径中搜索。必须为绝对路径。'Rebuild Gtags Database'不会为这些库重建标记文件,需要单独为它们构建标记。文件夹/工作区设置将覆盖用户设置。

  • gnuGlobal.globalExecutable:指定global的路径。默认值为'global'。

  • gnuGlobal.gtagsExecutable:指定gtags的路径。默认值为'gtags'。

  • gnuGlobal.objDirPrefix:如果设置了objDirPrefix且objDirPrefix目录存在,gtags会在objDirPrefix/project_dir目录中创建并生成标记文件。Global也会尝试在该目录中搜索标记文件。此选项适用于不想在项目目录中创建标记文件的情况。只支持UNIX风格文件系统,Windows不支持。

  • gnuGlobal.gtagSkipSymlink:构建标记文件时跳过符号链接。对于包含大量符号链接的大型项目很有用。可选项为None、File、Directory或All。默认值为None。需要GNU Global 6.6.3。

  • gnuGlobal.debugMode:记录更多信息以调试此扩展。默认禁用。如果扩展表现不佳,请尝试启用此配置。可以在开发者工具(帮助 > 切换开发者工具)中找到错误日志。

限制:

GNU Global不进行AST解析,因此自动完成功能无法理解类成员等。

资源:

享受开发乐趣!

本站所有资源都是由网友投稿发布,或转载各大下载站, 请自行检测软件的完整性!

本站所有资源仅供学习与参考,请勿用于商业用途,否则 产生的一切后果将由您自己承担!

如有侵权请联系我们删除下架,联系方式:study_golang@163.com

最新教程

查看更多
  • Golang云原生架构师课程
    Golang云原生架构师课程
    Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
  • MySQL数据管理之备份恢复案例解析视频教程
    MySQL数据管理之备份恢复案例解析视频教程
    《MySQL数据管理之备份恢复案例解析视频教程》MySQL是一个开放源码的小型关联式数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
  • MySQL索引优化解决方案
    MySQL索引优化解决方案
    本套课程是根据MySQL索引的设计理念与数据结构、索引使用场景、索引分类、索引运用场景、索引性能分析、查询优化、MySQL索引的慢查询等组成,主要讲述了MySQL索引优化的解决方案,非常适合有MySQL使用基础或者有一定工作经验的同学。课程讲解了解决大数量查询慢的问题、如何编写一个高效的SQL、查询语句应该如何优化、索引的实现原理是什么、索引又应该如何优化...等诸多SQL索引优化的难点和面试点。
  • 极客学院Docker视频教程
    极客学院Docker视频教程
    Docker是PaaS提供商dotCloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。Docker自2013年以来非常火热,无论是从github上的代码活跃度,还是各大厂商的支持,都使Docker成为了时下最受关注的技术,甚至微软都声称在下一代WindowsServer中集成对Docker的支持。所以我们收集了《极客学院Docke
  • Golang进阶实战编程
    Golang进阶实战编程
    本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
  • JavaScript极速入门
    JavaScript极速入门
    本套课程将帮助大家迅速掌握JavaScript这门高端的、动态的、弱类型编程语言。知识点简单明了,让你学习0压力,适合新手观看学习......