Skip to content
This repository has been archived by the owner on Mar 10, 2022. It is now read-only.
/ edoc Public archive

EEP-48 doc chunk implementation for Erlang/OTP - merged upstream for OTP 24.0!

License

Notifications You must be signed in to change notification settings

erszcz/edoc

Repository files navigation

edoc

TravisCI Build Status

OTP 23.0 ships with EEP-48 support and online help in the shell. This support is based on doc chunks, a new format for storing Erlang module documentation. This fork of EDoc emits doc chunks for non-OTP projects. It means online help will be available for all Erlang projects using EDoc.

The expected end of life of this project is merging back into OTP once the changes are polished enough. See erlef/documentation-wg#4 for progress reports.

Build

$ rebar3 compile

Use

You can generate doc chunks for your project in two ways: via a command line script or by using a Rebar3 plugin.

Make doc chunks - CLI

ERL_LIBS=/Users/erszcz/work/erszcz/edoc/_build/default/lib/ \
    bin/edoc.escript -chunks -pa _build/default/lib/edoc/ebin/ -app edoc

ERL_LIBS is necessary for the out-of-OTP EDoc to be first in the Erlang code path. Otherwise, OTP-shipped EDoc with no chunks support would be used.

Make doc chunks - Rebar3 plugin

Put this in your rebar.config:

{plugins,
 [
  {rebar3_edoc_chunks, {git, "https://github.com/erszcz/edoc.git", {branch, "wip"}}}
 ]}.

{provider_hooks,
 [
  {post, [{compile, {edoc_chunks, compile}}]}
 ]}.

Then just rebar3 compile and find the chunks under _build/default/lib/$PROJECT/doc/chunks.

See https://github.com/erszcz/kvs/blob/4feb22b5397e2ffa620dab15e72e84893d9de8ef/rebar.config for a working rebar.config example using profiles.

Generate ExDoc HTML documentation

It's also possible to use an experimental branch of ExDoc to generate HTML docs from the chunks. Build ExDoc and then:

/Users/erszcz/work/elixir-lang/ex_doc/ex_doc \
    edoc "0.11" _build/default/lib/edoc/ebin --main edoc

Please note that as of now wm-erlang ExDoc branch is required.

About

EEP-48 doc chunk implementation for Erlang/OTP - merged upstream for OTP 24.0!

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published