-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Labels
sphinxSphinx domain / PLC API documentation generationSphinx domain / PLC API documentation generation
Description
The sphinx domain allows for generating PLC project API documentation directly from the source code. Currently, it's pretty limited - the proof-of-concept from #12 is now in master.
A simple example might be:
conf.py
extensions = [
"blark.sphinxdomain",
]
blark_projects = [
"/Users/klauer/Repos/lcls-twincat-general/LCLSGeneral/LCLSGeneral.tsproj",
]
blark_signature_show_type = True
html_css_files = [
"css/blark_default.css",
]and the reStructuredText source:
.. bk:type:: ST_System
.. bk:function_block:: FB_TempSensor
.. bk:function_block:: FB_EtherCATDiag
.. bk:variable_block:: VAR_OUTPUTWhere to from here? Some notes to self mostly:
- At the very least, I'd like to be able to document programs and other things I've forgotten.
- Would syntax highlighting be a possibility?
- What about dependency graphs?
- Multiple projects and dependencies (I had done an initial dependency store thing with whatrecord; https://github.com/pcdshub/whatrecord/blob/e0a5cbfaf62ae80df3aeb69565893a4efc806205/whatrecord/plugins/twincat_pytmc.py#L673; this needs overhauling)
- TMC file data structures?
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
sphinxSphinx domain / PLC API documentation generationSphinx domain / PLC API documentation generation