]> code.delx.au - gnu-emacs-elpa/blob - README.rst
Update README.rst
[gnu-emacs-elpa] / README.rst
1 =========================
2 Use GNU Global in Emacs
3 =========================
4
5 A package for working with `GNU Global
6 <http://www.gnu.org/software/global>`_ source tagging system in Emacs.
7
8 This package is part of `GNU ELPA <http://elpa.gnu.org>`_
9 (``M-x list-packages``).
10
11 Patches, feature requests and bug reports are welcome. Thanks.
12
13 Features
14 ~~~~~~~~
15
16 #. Automatically run ``global -u`` when needed
17 #. Highlight valid tag at point
18 #. Built on top of ``compile.el`` (asynchonrous and other nice
19 features)
20 #. Abbreviated display of file names
21
22 Why GNU Global
23 ~~~~~~~~~~~~~~
24
25 The opengrok project composed a feature comparison table between a few
26 tools. The `page
27 <http://hub.opensolaris.org/bin/view/Project+opengrok>`_ is taken
28 offline after 2013-03-24 but `here <http://i.imgur.com/IQCPQ0j.png>`_
29 is a backup.
30
31 Screenshot
32 ~~~~~~~~~~
33
34 .. figure:: http://i.imgur.com/d430rmm.png
35 :width: 500px
36 :target: http://i.imgur.com/d430rmm.png
37 :alt: ggtags.png
38
39 Tutorial
40 ~~~~~~~~
41
42 Type ``M-x ggtags-mode`` to enable the minor mode, or as usual enable
43 it in your desired major mode hooks. When the mode is on the symbol at
44 point is underlined if it is a valid tag.
45
46 ``M-.`` finds definitions or references according to the tag at point,
47 i.e. if point is at a definition tag find references and vice versa.
48 ``C-u M-.`` is verbose and will ask you the name - with completion
49 - and the type of tag to search.
50
51 If multiple matches are found, navigation mode is entered. In this
52 mode, ``M-n`` and ``M-p`` moves to next and previous match, ``M-}``
53 and ``M-{`` to next and previous file respectively. ``M-o`` toggles
54 between full and abbreviated displays of file names in the auxiliary
55 popup window. When you locate the right match, press RET to finish
56 which hides the auxiliary window and exits navigation mode. You can
57 resume the search using ``M-,``. To abort the search press ``M-*``.
58
59 Normally after a few searches a dozen buffers are created visiting
60 files tracked by GNU Global. ``C-c M-k`` helps clean them up.
61
62 Development
63 ~~~~~~~~~~~
64
65 The goal is to make working with GNU Global in Emacs as effortless and
66 intuitively as possible.
67
68 Bugs
69 ~~~~
70
71 https://github.com/leoliu/ggtags/issues