mirror of
https://github.com/BurntSushi/ripgrep.git
synced 2025-03-17 20:28:03 +02:00
In effect, we switch from `path.is_file()` to `!path.is_dir()`. In cases where process substitution is used, for example, the path can actually have type "fifo" instead of "file." Even if it's a fifo, we want to treat it as-if it were a file. The real key here is that we basically always want to consider a lone argument as a file so long as we know it isn't a directory. Because a directory is the only thing that will causes us to (potentially) search more than one thing. Fixes #2736
ripgrep core
This is the core ripgrep crate. In particular, main.rs
is where the main
function lives.
Most of ripgrep core consists of two things:
- The definition of the CLI interface, including docs for every flag.
- Glue code that brings the
grep-matcher
,grep-regex
,grep-searcher
andgrep-printer
crates together to actually execute the search.
Currently, there are no plans to make ripgrep core available as an independent library. However, much of the heavy lifting of ripgrep is done via its constituent crates, which can be reused independent of ripgrep. Unfortunately, there is no guide or tutorial to teach folks how to do this yet.