This layer provides bindings for using Cscope and PyCscope in Spacemacs.
Cscope
provides indexing and searching capabilities for C and C++ code.
PyCscope
extends these capabilities for Python code as well. See
here for a comparison between Cscope
and other similar tools (such as gtags).
To use this configuration layer, add it to your ~/.spacemacs
. You will need to
add cscope
to the existing dotspacemacs-configuration-layers
list in this
file.
Install Cscope
through your package manager, or download it from the
website and build it from source.
From package manager (for example, Ubuntu):
sudo apt-get install cscope
From source:
tar xvf cscope-15.8b
cd cscope-15.8b
./configure
make
sudo make install
Install PyCscope through pip:
pip install pycscope
Before using any helm-cscope commands, remember to create a Cscope index file.
Do it by running the command cscope-index-files
for C and C++ projects, or the
command cscope/run-pycscope
for Python projects, bound to SPC m g i
.
Key Binding | Description |
---|---|
SPC m g c | find which functions are called by a function |
SPC m g C | find where a function is called |
SPC m g d | find global definition of a symbol |
SPC m g e | search regular expression |
SPC m g f | find a file |
SPC m g F | find which files include a file |
SPC m g i | create Cscope index |
SPC m g r | find references of a symbol |
SPC m g x | search text |