diff options
author | Andrew Gallant <jamslam@gmail.com> | 2018-08-03 17:26:22 -0400 |
---|---|---|
committer | Andrew Gallant <jamslam@gmail.com> | 2018-08-20 07:10:19 -0400 |
commit | bb110c1ebeeda452046830b3991f705f5759da92 (patch) | |
tree | cc2b0112a3ca9b8d05cf1e953553907d71564082 /complete | |
parent | d9ca5293569efb255608d3c601107bcfe7060f15 (diff) |
ripgrep: migrate to libripgrep
This commit does the work to delete the old `grep` crate and effectively
rewrite most of ripgrep core to use the new libripgrep crates. The new
`grep` crate is now a facade that collects the various crates that make
up libripgrep.
The most complex part of ripgrep core is now arguably the translation
between command line parameters and the library options, which is
ultimately where we want to be.
Diffstat (limited to 'complete')
-rw-r--r-- | complete/_rg | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/complete/_rg b/complete/_rg index 4342e8d2..7e17b93d 100644 --- a/complete/_rg +++ b/complete/_rg @@ -111,10 +111,18 @@ _rg() { "--no-ignore-vcs[don't respect version control ignore files]" $no'--ignore-vcs[respect version control ignore files]' + + '(json)' # json options + '--json[output results in a JSON Lines format]' + $no"--no-json[output results in the standard format]" + + '(line)' # Line-number options {-n,--line-number}'[show line numbers for matches]' {-N,--no-line-number}"[don't show line numbers for matches]" + + '(line terminator)' # line terminator options + '--crlf[use CRLF as a line terminator]' + $no"--no-crlf[do not use CRLF as a line terminator]" + + '(max-depth)' # Directory-depth options '--max-depth=[specify max number of directories to descend]:number of directories' '!--maxdepth=:number of directories' @@ -131,6 +139,11 @@ _rg() { '--mmap[search using memory maps when possible]' "--no-mmap[don't search using memory maps]" + + '(multiline)' # multiline options + {-U,--multiline}'[permit matching across multiple lines]' + $no"--no-multiline[restrict matches to at most one line each]" + '--multiline-dotall[make "." match newline in multiline mode]' + + '(only)' # Only-match options '(passthru replace)'{-o,--only-matching}'[show only matching part of each line]' @@ -138,6 +151,12 @@ _rg() { '(--vimgrep count only replace)--passthru[show both matching and non-matching lines]' '!(--vimgrep count only replace)--passthrough' + + '(pcre2)' # PCRE2 options + {-P,--pcre2}'[Enable matching with PCRE2]' + $no"--no-pcre2[don't use PCRE2]" + "--pcre2-unicode[Enable PCRE2 Unicode mode]" + $no"--pcre2-unicode[Disable PCRE2 Unicode mode]" + + '(pre)' # Preprocessing options '(-z --search-zip)--pre=[specify preprocessor utility]:preprocessor utility:_command_names -e' $no'--no-pre[disable preprocessor utility]' @@ -158,6 +177,7 @@ _rg() { + stats # Statistics options '(--files file-match)--stats[show search statistics]' + $no"--no-stats[don't show search statistics]" + '(text)' # Binary-search options {-a,--text}'[search binary files as if they were text]' @@ -166,6 +186,10 @@ _rg() { + '(threads)' # Thread-count options '(--sort-files)'{-j+,--threads=}'[specify approximate number of threads to use]:number of threads' + + '(trim)' # trim options + '--trim[trim any ASCII whitespace prefix from each line]' + $no"--no-trim[don't trim ASCII whitespace prefix from each line]" + + type # Type options '*'{-t+,--type=}'[only search files matching specified type]: :_rg_types' '*--type-add=[add new glob for specified file type]: :->typespec' @@ -203,6 +227,7 @@ _rg() { '--max-filesize=[specify size above which files should be ignored]:file size (bytes)' "--no-config[don't load configuration files]" '(-0 --null)'{-0,--null}'[print NUL byte after file names]' + '--null-data[use NUL as a line terminator]' '--path-separator=[specify path separator to use when printing file names]:separator' '(-q --quiet)'{-q,--quiet}'[suppress normal output]' '--regex-size-limit=[specify upper size limit of compiled regex]:regex size (bytes)' |