doc/dev/documenting.txt
author Philippe Pepiot <philippe.pepiot@logilab.fr>
Thu, 19 Jan 2017 15:27:39 +0100
changeset 11899 bf6106b91633
parent 10495 5bd914ebf3ae
child 12792 e2cdb1be6bd9
permissions -rw-r--r--
[schema] load schema from modules names instead of directories Introspect cubicweb, cubes and apphome using pkgutil to generate the full list of modules names for loading the schema. Keep historical behavior and check if source .py file exists if a module is found using python bytecode file (.pyc and .pyo) Loading schema from apphome require apphome to be present in sys.path and that "schema" module resolve to a file located in apphome. Update migraction tests to explicitely update sys.path when loading schema from different apps, use a contextmanager for this so it's more readable. Require updated logilab-common and yams

====
Book
====

----
Part
----

Chapter
=======

.. _Level1AnchorForLaterReference:

Level 1 section
---------------

Level 2 section
~~~~~~~~~~~~~~~

Level 3 section
```````````````



*CubicWeb*


inline directives:
  :file:`directory/file`
  :envvar:`AN_ENV_VARIABLE`
  :command:`command --option arguments`

  :ref:, :mod:


.. sourcecode:: python

   class SomePythonCode:
     ...

.. XXX a comment, wont be rendered


a [foot note]_

.. [foot note] the foot note content


Boxes
=====

- warning box: 
    .. warning::

       Warning content
- note box:
    .. note::

       Note content



Cross references
================

To arbitrary section
--------------------

:ref:`identifier` ou :ref:`label <identifier>`

Label required of referencing node which as no title, else the node's title will be used.


To API objects
--------------
See the autodoc sphinx extension documentation. Quick overview:

* ref to a class: :class:`cubicweb.devtools.testlib.AutomaticWebTest`

* if you can to see only the class name in the generated documentation, add a ~:
  :class:`~cubicweb.devtools.testlib.AutomaticWebTest`

* you can also use :mod: (module), :exc: (exception), :func: (function), :meth: (method)...

* syntax explained above to specify label explicitly may also be used