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


zig docs on command line.


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.


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 .


same as zig license.