The cgrep package

[ Tags: gpl, program, utils ] [ Propose Tags ]

Cgrep: a context-aware grep for source codes


[Skip to Readme]

Properties

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
Dependencies ansi-terminal (>=0.5), array (>=0.4), async (>=2.0), base (<5.0), bytestring (>=0.10), cmdargs (>=0.10), containers (>=0.5), directory (>=1.2), dlist (>=0.3), either (>=4.0), filepath (>=1.3), ghc-prim (>=0.2), mtl (>=2.0), regex-base (>=0.90), regex-pcre (>=0.90), regex-posix (>=0.90), safe (>=0.3), split (>=0.2), stm (>=2.1), stringsearch (>=0.3), transformers, unix-compat (>=0.4), unordered-containers (>=0.1) [details]
License GPL-2
Author Nicola Bonelli
Maintainer Nicola Bonelli <nicola@pfq.io>
Category Utils
Home page http://awgn.github.io/cgrep/
Uploaded Fri Oct 30 11:40:40 UTC 2015 by NicolaBonelli
Distributions Arch:6.6.17, NixOS:6.6.17
Executables cgrep
Downloads 7337 total (184 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
Last success reported on 2015-12-11 [all 6 reports]
Hackage Matrix CI

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for cgrep-6.5.9

[back to package description]

CGrep: a context-aware grep for source codes Hackage

Usage

Cgrep 6.5.9 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, 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:

-h --no-filename          suppress the file name prefix on output
-N --no-line-umber        suppress the line number on output lines
   --lang=ITEM            specify languages. ie: Cpp, +Haskell, -Makefile
   --lang-maps            lists the language mappings
   --force-language=ITEM  force the language
   --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
-v --invert-match         select non-matching lines
   --max-count=INT        stop search in files after INT matches
   --count                print only a count of matching lines per file
   --show-match           show list of matching tokens
   --color                use colors to highlight the matching strings
   --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

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
-n --no-turbo             disable turbo mode
-? --help                 Display help message
-V --version              Print version information