Skip to content

Latest commit

 

History

History
53 lines (27 loc) · 3 KB

README.md

File metadata and controls

53 lines (27 loc) · 3 KB

Documentation

This is where we host all MOC documentation.

Contributing

Documentation files are markdown and are stored in docs/source

docs/source/home.md is the index for MOC documentation.

For each section in home.md there's a sub directory in docs/source where files relevant to that section are stored. For example files in "How Tos" section are stored in docs/source/how-tos.

We also have an section for archived files. These are stored in docs/source/archive-files and are listed in docs/source/Archives-page.md

Non-markdown files are stored in docs/souce/_static/<type>/ where sub directory type depends on the file's type. For example all limages are in docs/source/_static/img.

To update MOC documentationi, fork the documentation repository and submit a pull request. This will trigger a series of travis-ci tasks, that validate the markdown syntax, check document links, and make sure sphinx can build the docs.

Validation

There are scripts in docs/scripts that can be used to validate the Markdown sources in this repository. These are the link checker scripts used by tracis-ci to validate documentation changes.

You will need to install the requirements in requirements-testing.txt before you can run theses scripts.

To validate all Markdown files:

./docs/scripts/check-all-links

To validate a single Markdown file:

./docs/scripts/markdown-check-links path/to/file.md

See the check-all-links scripts for an example of how to tell markdown-check-links about the _static directory.

To check markdown syntax, we use the node-js markdown linter remark-lint. This will lint documentation markdown files according to following syntax rules

You can install remark link on your own machine by following these instructions. MOC's Remark configuration is in .remarkrc

How Paths Work

MOC Docs are built with Sphinx using markdown parsing plugin called recommonmark.

One component of recommonmark is AutoStructify which converts references in markdown files to other markdown files into url references when the markdown files are converted to html.

This allows the correct link to be generated when the base url is changed (eg. building docs for a different version)

The url resolver can't parse extensions other than .html, so a link should be the relative path to the markdown file with the '.mdextention replaced with.html`.

For example, to reference contacts/MOC-Developers-Contact-Information.md in home.md, use a markdown link to contacts/MOC-Developers-Contact-Information.html.

This will have the url https://moc-documents.readthedocs.io/en/latest/contacts/MOC-Developers-Contact-Information.html when the docs are built.

Paths used as links must be relative to the file where the link is. For example to link to an image in contacts/MOC-Developers-Contact-Information.md the correct path would be ../_static/img/<img_name>