Autogeneration of DSL documentation for TextX
Project description
# TextX DSL autodocumentation tool A non-official TextX poc-project aiming to autogenerate documentation of DSL.
For testing the TextX integration, you will be required to install [from repository](https://github.com/textX/textX) since the CLI extending is not available in 1.8.
## Files
[example.py](example.py): example of DSL definition directly taken [from another project](https://github.com/aluriak/24h2019)
[out.html](out.html): the HTML output file (take a look to get a feeling of the current project achievements)
[poc.py](poc.py): first implementation, absolutely bad, but few functions are worth saving
[poc_as_cls.py](poc_as_cls.py): use some functions of poc.py to implement the same thing, but in a clearer manner
[poc_render_peg.py](poc_render_peg.py): rendering of arpeggio (textx backend) grammars
[Current results](out.html) are encouraging.
## F(unny )eatures
support of docstrings (those at user classes level)
auto-generation of examples for regexes, and complete linking to [pythex.org](https://pythex.org)
## TODO
integrate complete example (either randomly or author-provided)
get a complete example with advanced features like references and other textx/arpeggio constructs
fix detection and handling of terminal for the description of rules
generate few examples for each documented rule (randomly, probably)
make the generation deterministic
humanize the phrasing (ex: when choice only on raw strings, avoid the bullet list and list them inline directly with an or for the last join: Type either _a_, _b_ or _c_)
integration into textx with [textx subcommands](https://github.com/textX/textX/pull/162) (see [doc](http://textx.github.io/textX/latest/textx_command/#extending-textx-command))
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for textx_dsldoc-0.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e1cc948e466ec21910925e0ee61ca932921bae5ce604137e3533e266a4738f45 |
|
MD5 | 5915051cdc525798ce752d9369f0df97 |
|
BLAKE2b-256 | d036a104f8ef622f79acb389287a19dd53f30065a466c8a4472654f0ffd89f4c |