SpaceVim

A modular Vim/Neovim configuration


Home | About | Quick start guide | Documentation | Development | Community | Sponsors | 中文


Available Layers » gtags

Description

gtags layer provides tags manager for SpaceVim, this layer can be used to generate and update tags database automatically.

Features

Installation

To use gtags layer, you first have to install GNU Global. You can install global from the software repository of your OS or build it from source.

Install on Ubuntu:

sudo apt-get install global

Install on OSX using Homebrew:

brew install global

Install on windows using scoop:

scoop install global

Build from source:

To take full advantage of global you should install 2 extra packages in addition to global: pygments and ctags (exuberant).

Download the latest tar.gz archive, then run these commands:

tar xvf global-6.5.3.tar.gz
cd global-6.5.3
./configure --with-exuberant-ctags=/usr/bin/ctags
make
sudo make install

Configuration

gtags layer provides the following options:

Language Support

Built-in languages

If you do not have ctags or pygments enabled gtags will only produce tags for the following languages:

Exuberant ctags languages

If you have enabled exuberant ctags and use that as the backend the following additional languages will have tags created for them:

Universal ctags languages

Instead, If you have installed the newer/beta universal ctags and use that as the backend the following additional languages will have tags created for them:

Pygments languages

In order to look up symbol references for any language not in the built-in parser, you must use the pygments backend. When this backend is used, global actually uses both ctags and pygments to find the definitions and uses of functions and variables as well as “other symbols”.

If you enabled pygments (the best choice) and use that as the backend the following additional languages will have tags created for them:

Key bindings

Key Binding Description
SPC m g c create a tag database
SPC m g u manually update tag database
SPC m g f jump to a file in tag database
SPC m g d find definitions
SPC m g r find references
SPC m g j input a symbol and find definitions

Powered by Jekyll