bengeisler / TcLog

Flexible logging functionality for TwinCAT 3.
MIT License
54 stars 10 forks source link

doc: generating apidoc and userguide for TcLog #7

Closed seehma closed 1 year ago

seehma commented 1 year ago

Hi, we created a service to automatically generate a userguide (which has to be created) and a API doc (which will be created out of your code in TcLog -> see here for guidelines: https://doc.zeugwerk.dev/contribute/contribute_documentation.html). So there is no need for a separated documentation beside your code, you can document right IN your code, where it is the most useful. We are currently in a testing phase and have of course our framework build with it (see: https://doc.zeugwerk.dev/reference/ZAux/StringBuilder/StringBuilder.html) and some other public projects like Struckig. This github action will be triggered everytime when you do a commit, then it will trigger our CI/CD system, this will pull the current repository, build the included documentation and then upload the documentation to your github repository. (see here, i have made an example: http://seehma.github.io/TcLog). For public (github) projects we made 30 triggered actions per months for free. If you like, your project can use it, there are only a few steps to be taken - see here for the documentation on this https://github.com/Zeugwerk/zkdoc-action

short explanation:

If there are any problems, feel free to ask. Regards M.

seehma commented 1 year ago

Hi @bengeisler , if you want to let our ci/cd system generate the documentation automatically, then just change the branch name in documentation.yml to the one you merged this pull request. The documentation will then be pushed as github page to this repository. if you want to start this action manually then go to actions in this repo and start documentation action. When you merge your documentation branch in main, you can set it up, that after every commit a fresh and corresponding documentation will be generated and saved. if you have any questions, feel free to reach out to us... Regards M.

grafik

bengeisler commented 1 year ago

I updated the code and managed to generate and publish the documentation. It's really a nice tool, thanks!! 👍

But I still have some questions:

Do I have to indicate a specific programming language after the triple accents?

seehma commented 1 year ago

Here i have made a PR for this last-mentioned documentation issue: https://github.com/bengeisler/TcLog/pull/8 I will come back here, for the other questions later...

seehma commented 1 year ago

Here is a second PR where i fixed the struct-variable-doc: #9

seehma commented 1 year ago

The workflow seems only to run if the folder is called documentation. I'd like to call it docs, however. Is that possible? Or could you otherwise make the mandatory folder name explicit in the documentation / workflow?

for now, not possible. we will add this with a new parameter to our ci/cd system and reach out to you if done...

seehma commented 1 year ago

Pragmas are shown in the documentation. Is that a bug or a feature

We made thias as "feature", when you want to implement an interface out of that documentation and you do not see the attributes, the compiler signals a warning. Therefore we decided to include those attributes...