summaryrefslogtreecommitdiffstats
path: root/BLURB
blob: 2723a20cb7ca85c99ad44fdc291523e7776fd432 (plain)
1
2
3
4
5
6
7
very fast, very high capacity indexer for C/C++ source code

`mkid' creates an index covering a virtually unlimited number of files.  (The number is only limited by available virtual address space.  I have built ID files covering 500,000+ source files) Huge capacity makes idutils ideal for indexing an entire Linux source distribution--kernel, libraries, utilities, applications.  With a global distribution source index, it is possible globally audit or change system interfaces.  `mkid' is very fast--on modern systems, its speed is limited by I/O bandwidth.

`lid' queries the index, allowing you to find in an instant what files contain a particular identifier or numeric literal.  Queries can be for literal or regexp, word or substring, case sensitive or insensitive.

`gid' (really an alias for `lid --grep') will show you all lines where an identifier occurs.  It's an optimized grep that works instantly because the index guides it to search only those files where there will be a hit.  Files that don't contain the identifier are ignored.  Hits are printed in the same format as `grep -n', so they are digestible by compile mode in emacs.  The package includes idutils.el which contains a small amount of elisp to allow convenient use of `gid' in conjunction with compile mode.  I bind this function to M-* (Meta Splat), and think of it as an expanded M-.  (Meta Dot), which shows all occurrences of an identifier rather than just the definition.