On 18/07/2019 15:36, Sebastian Huber wrote:
On 11/07/2019 15:44, Sebastian Huber wrote:
On 11/07/2019 15:19, Joel Sherrill wrote:
Early on, we discussed that there wasn't a Rest backend to Doorstop.
If we are having
to add that anyway, can each "category" be generated as a chapter?
We could generate 100+ chapters but we can't have 100+ requirements
documents.
We will have custom attributes, such as type and verification-method,
so we need a custom documentation generator anyway:
YAML files -> Doorstop -> Custom Translator -> Sphinx/ReST -> PDF | HTML
It will be sections or chapters not documents.
I just had a look at Doorstop to figure out how difficult it is to write
a custom translator. It is very easy. The following script visits all
items of a Doorstop document hierarchy loaded from the current
directory. In the ItemVisitor() you can aggregate all the data you need
and then dump it in your custom format. This is currently not documented:
https://github.com/jacebrowning/doorstop/blob/develop/docs/api/scripting.md
If we start to use this, then we should improve the Doorstop documentation.
Here is the script:
from doorstop.core.builder import build
class ItemVisitor:
def __call__(self, item, document, tree):
print(f"item {item} document {document} tree {tree}")
return
yield
tree = build()
tree.load()
tree.validate(item_hook=ItemVisitor())
Just for reference, you can also export the data via Doorstop into
various formats, e.g.
doorstop export RTEMS-APPL-CONF output.yml
will export it into a YAML output format. The benefit of a scripting API
would be that no intermediate document must be generated. I am not sure
what is better in the long run. The scripting approach relies on API
stability.
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.hu...@embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel