zig docs on command line
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
alex 7fe315da03 output: reset color before rendering container doc comments 1 year ago
src output: reset color before rendering container doc comments 1 year ago
LICENSE initial import 2 years ago
README.md output: pull in changes from lib/std/zig/render.zig at 68d2f68ed 1 year ago
build.zig build: add test subcommand 2 years ago

README.md

zig docs on command line.

usage:

zdoc [-s] <source> [identifier]

the program searches source code for matching public identifiers, printing found types and their doc comments to stdout. the search is case-insensitive and non-exhaustive. no semantic analysis is run.

if -s option is specified, any identifier substring matches. as a side effect, the -s with no identifier arg results in printing out only top level doc comments.

for example, look up "hello" identifier in a project file:

zdoc ./src/main.zig hello

search across all .zig files starting from the src directory, recursively and following symlinks:

zdoc ./src hello

if the source starts with std., the dot delimiters are replaced with filesystem path separator and "std." with the std_dir value from zig env command output.

for example, look up format function in std lib:

zdoc std.fmt format

list all expectXxx functions from the testing module:

zdoc -s std.testing expect

as a special case, if the source is exactly std and no such file or directory exists, zdoc searches across the whole zig std lib.

zdoc outputs results in a basic colored format unless NO_COLOR env variable is set or --nocolor flag is seen on command line.

supported versions

zdoc master branch requires zig v0.11. however, zdoc can be built with zig v0.10 from the 0.10 branch.

contributing

to contribute, create a pull request or send a patch with git send-mail to alex-dot-cloudware.io.

before sending a change, please make sure tests pass:

zig build test

and all code is formatted:

zig fmt --check .

license

same as zig license.