.\" Sindex manpage by Alexey Gladkov .TH semind "1" . .SH NAME semind \- Semantic Indexer for C . .SH SYNOPSIS .B semind [\fIoptions\fR] .br .B semind [\fIoptions\fR] \fIadd\fR [\fIcommand options\fR] [\fI--\fR] [\fIcompiler options\fR] [\fIfiles...\fR] .br .B semind [\fIoptions\fR] \fIrm\fR [\fIcommand options\fR] \fIpattern\fR .br .B semind [\fIoptions\fR] \fIsearch\fR [\fIcommand options\fR] [\fIpattern\fR] .br .B semind [\fIoptions\fR] \fIsearch\fR [\fIcommand options\fR] (\fI-e\fR|\fI-l\fR) \fIfilename\fR:\fIlinenr\fR:\fIcolumn\fR .br .SH DESCRIPTION .P semind is the simple to use cscope-like tool based on sparse/dissect. Unlike cscope it runs after pre-processor and thus it can't index the code filtered out by ifdef's, but otoh it understands how the symbol is used and it can track the usage of struct members. . .SH SUBCOMMANDS .TP \fBadd\fR generates or updates semantic index file. .TP \fBrm\fR removes files from the index by \fIpattern\fR. The \fIpattern\fR is a .BR glob (7) wildcard pattern. .TP \fBsearch\fR queries information about symbol by \fIpattern\fR. The \fIpattern\fR is a .BR glob (7) wildcard pattern. . .SH COMMON OPTIONS .TP \fB-D\fR, \fB--database=FILE\fR specify database file (default: ./semind.sqlite). .TP \fB-v\fR, \fB--verbose\fR show information about what is being done. .TP \fB-h\fR, \fB--help\fR show this text and exit. . .SH ADD OPTIONS .TP \fB--include-local-syms\fR include into the index local symbols. . .SH SEARCH OPTIONS .TP \fB-f\fR, \fB--format=STRING\fR specify an output format. Default: '(%m) %f\\t%l\\t%c\\t%C\\t%s' (see .BR FORMAT below). .TP \fB-p\fR, \fB--path=PATTERN\fR search symbols only in specified directories. .TP \fB-m\fR, \fB--mode=MODE\fR search only the specified type of access (see .BR MODE below). .TP \fB-k\fR, \fB--kind=KIND\fR specify a kind of symbol (see .BR KIND below). .TP \fB-e\fR, \fB--explain\fR Show what happens in the specified file position; .TP \fB-l\fR, \fB--location\fR Show usage of symbols from a specific file position; .TP \fB-v\fR, \fB--verbose\fR show information about what is being done; .TP \fB-h\fR, \fB--help\fR show this text and exit. . .SH FORMAT .TP \fB%m\fR access mode in human readable form (see .BR MODE below). .TP \fB%f\fR file name. .TP \fB%l\fR line number. .TP \fB%c\fR column number. .TP \fB%C\fR the name of the function in which the symbol occurs. .TP \fB%n\fR symbol name. .TP \fB%s\fR source code line. Indexer does not save source code lines. They are read from the file during the search. . .SH KIND .TP \fBf\fR function .TP \fBs\fR strict .TP \fBm\fR struct member . .SH MODE The \fBMODE\fR is dumped as a 3-letter string. The first letter denotes address of part, 2-nd - access by value, 3-rd - access by pointer. A special value '\fIdef\fR' means a symbol definition. .TP \fBr\fR read .TP \fBw\fR write .TP \fBm\fR read and write . .SH SEE ALSO .BR sparse (1) . .SH HOMEPAGE https://sparse.docs.kernel.org . .SH MAILING LIST linux-sparse@vger.kernel.org .