circuitpython/docs
Rami Ali b7fa63c7ce tools: Add gen-cpydiff.py to generate docs differences.
This patch introduces the a small framework to track differences between
uPy and CPython.  The framework consists of:

- A set of "tests" which test for an individual feature that differs between
  uPy and CPy.  Each test is like a normal uPy test in the test suite, but
  has a special comment at the start with some meta-data: a category (eg
  syntax, core language), a human-readable description of the difference, a
  cause, and a workaround.  Following the meta-data there is a short code
  snippet which demonstrates the difference.  See tests/cpydiff directory
  for the initial set of tests.

- A program (this patch) which runs all the tests (on uPy and CPy) and
  generates nicely-formated .rst documenting the differences.

- Integration into the docs build so that everything is automatic, and the
  differences appear in a way that is easy for users to read/reference (see
  latter commits).

The idea with using this new framework is:

- When a new difference is found it's easy to write a short test for it,
  along with a description, and add it to the existing ones.  It's also easy
  for contributors to submit tests for differences they find.

- When something is no longer different the tool will give an error and
  difference can be removed (or promoted to a proper feature test).
2017-02-20 17:14:34 +11:00
..
differences tools: Add gen-cpydiff.py to generate docs differences. 2017-02-20 17:14:34 +11:00
esp8266 docs/esp8266/tutorial: Specify the baudrate in picocom example command. 2017-02-07 16:58:43 +11:00
library docs/library/lcd160cr: Mention the valid values for set_power() method. 2017-02-17 16:57:22 +11:00
pyboard stmhal: Add ability to skip booting from SD card via /flash/SKIPSD file. 2017-02-07 12:35:39 +11:00
readthedocs/settings docs: Add RTD local_settings file, to add custom templates. 2014-12-21 11:21:06 +00:00
reference docs/*/quickref.rst: Use new semantics of ticks_diff() 2016-11-08 02:01:05 +03:00
sphinx_selective_exclude docs: Add sphinx_selective_exclude extension suite. 2016-06-12 01:13:39 +03:00
static docs: Add M-logo as favicon. 2017-02-07 20:04:40 +11:00
templates docs: Add link to PDF version of docs in sidebar. 2016-06-06 11:37:40 +01:00
wipy docs/machine.Timer: Move WiPy adhoc parts to its documentation. 2017-01-28 12:08:00 +03:00
Makefile docs: Rebuild docs from scratch, as required for proper only:: handling. 2016-06-14 00:23:33 +03:00
README.md docs: Spelling mistakes 2016-08-02 11:17:46 +03:00
conf.py docs: Add M-logo as favicon. 2017-02-07 20:04:40 +11:00
esp8266_contents.rst docs/esp8266_contents: Referebce general and tutorial docs. 2016-05-02 17:45:42 +03:00
esp8266_index.rst docs: Add esp8266 quick reference page, with basic info. 2016-03-08 23:06:15 +00:00
license.rst docs: Change "Micro Python" to "MicroPython" in all places in docs. 2015-06-04 23:53:26 +01:00
make.bat Add .gitattributes file to force text line endings to LF. 2015-04-16 22:23:56 +01:00
pyboard_contents.rst docs: Add "reference" directory for putting docs about the language. 2015-06-25 00:20:57 +01:00
pyboard_index.rst docs: Add initial draft documentation for the WiPy. 2015-06-10 23:37:56 +02:00
topindex.html docs/topindex.html: esp8266: Enable quickref/general on the main page. 2016-04-21 01:03:27 +03:00
unix_contents.rst docs: Actually add unix port indexes, so docs for it could be generated. 2015-10-31 01:00:03 +03:00
unix_index.rst docs: Actually add unix port indexes, so docs for it could be generated. 2015-10-31 01:00:03 +03:00
wipy_contents.rst docs/wipy: Add wipy tutorials section. 2015-10-19 21:17:15 +02:00
wipy_index.rst docs/wipy: Add wipy tutorials section. 2015-10-19 21:17:15 +02:00

README.md

MicroPython Documentation

The MicroPython documentation can be found at: http://docs.micropython.org/en/latest/

The documentation you see there is generated from the files in the docs tree: https://github.com/micropython/micropython/tree/master/docs

Building the documentation locally

If you're making changes to the documentation, you may want to build the documentation locally so that you can preview your changes.

Install Sphinx, and optionally (for the RTD-styling), sphinx_rtd_theme, preferably in a virtualenv:

 pip install sphinx
 pip install sphinx_rtd_theme

In micropython/docs, build the docs:

make MICROPY_PORT=<port_name> html

Where <port_name> can be unix, pyboard, wipy or esp8266.

You'll find the index page at micropython/docs/build/<port_name>/html/index.html.

PDF manual generation

This can be achieved with:

make MICROPY_PORT=<port_name> latexpdf

but require rather complete install of LaTeX with various extensions. On Debian/Ubuntu, try (500MB+ download):

apt-get install texlive-latex-recommended texlive-latex-extra