go doc
style command line searching through documentation for rust crates.
roc
piggybacks off of the HTML documentation generated by rustdoc, so you will
need to run cargo doc
before using roc if you want to look at anything other
that the standard library. roc
only aims to provide a quick interface to track
down documentation summaries: most top level details will be shown but you
should pass the -o
flag to your query if you need to read the full
documentation. This will open the local doc page using your default web browser.
roc
assumes that you are using rustup and that you have stdlib docs downloaded.
If not, you will be unable to search the docs of anything in std
.roc
requires that you build any dependency crate docs before they can be found.
The simplest workflow is to run cargo doc
whenever you update your
Cargo.toml
in order to ensure that your local generated docs are up to date.```bash
$ roc std::cmp::Eq Trait for equality comparisons which are equivalence relations.
This means, that in addition to a == b and a != b being strict inverses, the equality must be (for all a, b and c)
$ cd roc && cargo doc
$ roc . :: known crates atty bitset bitvec bitflags cfgif clap clapderive colored debugunreachable futf heck html5ever implementors indexmap lazystatic libc log mac markup5ever markup5everrcdom osstrbytes phf phfshared precomputedhash procmacro2 procmacroerror procmacroerrorattr quote rocdoc select serde siphasher std stringcache strsim syn synmid tendril termsize termcolor textwrap time unicodesegmentation unicodewidth unicodexid utf8 vecmap xml5ever
$ roc rocdoc roc - command line doucmentation that rocks
roc is an attempt at bringing godoc style quick docs searching to the command line for rust. It doesn\'t generate any documentation itself, instead it relies entirely on the local HTML output created by running cargo doc in the root of your crate. You will need to have rust installed via rustup and have the std lib docs downloaded in order to look at std lib.
:: modules locate Locate the generated docs that we have available within the current workspace parse Parse the contents of rustdoc generated HTML files pprint Formatted output and pretty printing
$ roc rocdoc::locate::Locator pub struct Locator { /* fields omitted */ }
A Locator handles mapping a user query string from the command line to a file location on disk. It also provides information about what kind of documentation file it has found so that the appropriate parsing of the file contents can be carried out.
pub fn new(query: String) -> Self
pub fn targetfilepath(&self) -> Option
-l, --list list out modules under the current path
-o, --open open the selected doc page in the browser (local copy)
std::* -> $(rustc --print sysroot)/share/doc/rust/html/std
* -> $(dirname Cargo.toml)/target/doc