Versions |
6.4, 6.4.1, 6.4.2, 6.4.3, 6.4.3.1, 6.4.4, 6.4.5, 6.4.6, 6.4.7, 6.4.8, 6.4.9, 6.4.10, 6.4.11, 6.4.12, 6.4.13, 6.4.14, 6.4.15, 6.4.16, 6.4.17, 6.4.18, 6.4.19, 6.4.20, 6.4.21, 6.4.22, 6.5.0, 6.5.1, 6.5.2, 6.5.3, 6.5.4, 6.5.5, 6.5.6, 6.5.7, 6.5.8, 6.5.9, 6.5.10, 6.5.11, 6.5.12, 6.5.13, 6.5.15, 6.6, 6.6.1, 6.6.2, 6.6.3, 6.6.4, 6.6.7, 6.6.8, 6.6.9, 6.6.10, 6.6.11, 6.6.12, 6.6.13, 6.6.14, 6.6.15, 6.6.16, 6.6.17, 6.6.20, 6.6.22, 6.6.23, 6.6.23, 6.6.24, 6.6.25, 6.6.30, 6.6.32, 8.0.0, 8.1.0 |
Change log |
None available |
Dependencies |
aeson, ansi-terminal, array, async, base (<5.0), bytestring, cmdargs, containers, directory, dlist, either, filepath, ghc-prim, mtl, process, regex-base, regex-pcre, regex-posix, safe, split, stm, stringsearch, transformers, unicode-show, unix-compat, unordered-containers, utf8-string, yaml [details] |
License |
GPL-2.0-only |
Author |
Nicola Bonelli |
Maintainer |
Nicola Bonelli <nicola@pfq.io> |
Category |
Utils |
Home page |
http://awgn.github.io/cgrep/
|
Uploaded |
by NicolaBonelli at 2018-02-22T21:03:00Z |
CGrep: a context-aware grep for source codes
[![Join the chat at https://gitter.im/awgn/cgrep](https://badges.gitter.im/awgn/cgrep.svg)](https://gitter.im/awgn/cgrep?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
Usage
Cgrep 6.6.23. Usage: cgrep [OPTION] [PATTERN] files...
cgrep [OPTIONS] [ITEM]
Pattern:
-f --file=FILE Read PATTERNs from file (one per line)
-w --word Force word matching
-p --prefix Force prefix matching
-s --suffix Force suffix matching
-e --edit Use edit distance
-G --regex Use regex matching (posix)
-P --regex-pcre Use regex matching (pcre)
-i --ignore-case Ignore case distinctions
Context filters (generic):
-c --code Enable search in source code
-m --comment Enable search in comments
-l --literal Enable search in string literals
Semantic (generic):
-S --semantic "code" pattern: _, _1, _2... (identifiers), $,
$1, $2... (optionals), ANY, KEY, STR, CHR, LIT,
NUM, HEX, OCT, OR. -> e.g. "_1(_1 && \$)" search
for move constructors, "struct OR class _ { OR :
OR <" search for a class declaration
C/C++ language:
--identifier Identifiers
--keyword Keywords
--directive Preprocessing directives
--header Headers names
--number Literal numbers
--string Literal strings
--char Literal chars
--oper Operators
Output control:
--max-count=INT Stop search in files after INT matches
--language-filter=ITEM Specify languages. ie: Cpp, +Haskell, -Makefile
--language-force=ITEM Force the language
--language-map Lists the language mappings
--magic-filter=ITEM Use unix magic as file-filter
-v --invert-match Select non-matching lines
--multiline=INT Enable multi-line matching
-r --recursive Enable recursive search (don't follow symlinks)
--prune-dir=ITEM Do not descend into dir
-R --deference-recursive Recursive, follow symlinks
Output format:
--show-match Show list of matching tokens
--color Use colors to highlight the matching strings
--no-color Do not use colors (override config file)
-h --no-filename Suppress the file name prefix on output
--no-numbers Suppress both line and column numbers on output
--no-column Suppress the column number on output
--count Print only a count of matching lines per file
--filename-only Print only the name of files containing matches
--format=STRING Format output. Var: #f #n #l #t ## #, #; #0
#1... e.g. "#f:#n #0 #1"
--json Format output as json object
--xml Format output as xml document
--editor Run the editor specified by EDITOR var., passing
the files that match
--vim Run vim the editor passing the files that match
Concurrency:
-j --jobs=INT Number of jobs
--cores=INT Number of physical processors utilized
--chunk=INT Specify the length of chunks
-a --asynch Process chunks asynchronously
Miscellaneous:
-d --debug=INT Debug level: 1, 2 or 3
--no-shallow Disable shallow-search
-? --help Display help message
-V --version Print version information
--numeric-version Print just the version number