This is the official documentation for Emojicode.
The documentation is built from Markdown and JSON source files by a compiler written in JavaScript. A Node.js installation is required to run it.
You can install its dependencies with npm:
npm install
It can then be executed:
node lib/index.js
The compiler supports the --watch option to watch keep running and to
automatically rebuild when it detects changes to the source files.
The important source files that live in the src directory are:
-
The files in
referencesandguideswhich are compiled to books.Each file represents one chapter and each book has a
chapters.jsonlisting these chapters. -
packagescontains resource to compile the package pages and APIs.Each package has its own directory containing a
meta.jsonand apackage.jsonfile. Thepackage.jsonfile represents the package API can be generated by the Emojicode Compiler using the-ror-R packageNameoption.All packages that shall be included in the documentation are listed in
packages/packages.json.
All files and directories execept lib, src, CNAME, package.json,
package-lock.json, README.md and those beginning with a full stop are not to
be edited as they are output from the compiler.
In addition to GFM, Emojicode Documentation supports syntax for callouts and grammar.
To create a Hint callout begin all lines with >!H. Likewise, Caution
notices are indicated by >!N.
Example:
>!H This chapter only introduces the three most important classes although there are many more.
>!H
>!H You can browse the whole API of the s package here.
A grammar rule is define like this:
$defined-rule$-> $rule$
All rule names must always be enclosed in $ signs, while the rule being
defined is closed with $-> instead of just a $.
The documentation compiler parses all rules, adds hyperlinks and warns of undefined or unreachable rules.