Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

textx-dsldoc-0.0.1.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

textx_dsldoc-0.0.1-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file textx-dsldoc-0.0.1.tar.gz.

File metadata

  • Download URL: textx-dsldoc-0.0.1.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.7.3 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.6

File hashes

Hashes for textx-dsldoc-0.0.1.tar.gz
Algorithm Hash digest
SHA256 c5df0211a20741f62de8073fb6e66aade2e569eb6444494f75367d0938b11e45
MD5 72cefbb96bfe848ed141021b08718b7f
BLAKE2b-256 150cd77010e23f371134d88072332b1b88fe9ffc9c7cb7fa81c14d482ec34ff7

See more details on using hashes here.

File details

Details for the file textx_dsldoc-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: textx_dsldoc-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.7.3 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.6

File hashes

Hashes for textx_dsldoc-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e1cc948e466ec21910925e0ee61ca932921bae5ce604137e3533e266a4738f45
MD5 5915051cdc525798ce752d9369f0df97
BLAKE2b-256 d036a104f8ef622f79acb389287a19dd53f30065a466c8a4472654f0ffd89f4c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page