xjDocs - a code documentation generator for Xojo

I have (finally) released a public alpha version of the new xjDocs (formerly RB-ADoc).

Details at: http://www.parkbenchsoftware.com/xjDocs/

xjDocs is an automatic code documentation generator for Xojo. Based on special comments and notes you include in your Xojo project, and customizable templates, xjDocs will generate HTML documentaion for your code.

Hopefully, the first testing by others will go well.

Enjoy.

Paul, looks really good!
I’ll give it a spin and see how it goes! Have to add those markers and stuff.

Got a question Paul.
If I type this in a Method:

The result will be that the three lines above is one long sentence.
How do I do a line break?
I can add
at the end of each comment but thats doesn’t feel right :wink:

[quote=64647:@Albin Kiland]The result will be that the three lines above is one long sentence.
How do I do a line break?
[/quote]

Is that with or without “MultiMarkdown” turned on? (without, it should line break automatically - with, you have to follow some Markdown/Multimarkdown rules.)

If it isn’t breaking automatically with MultiMarkdown off, looks like I broke something recently.

(With MultiMarkdown, you need 2 spaces at the end of a regular line to indicate you want a break)

Multimarkdown, that was it. Don’t know why I checked that.
This app will turn out really usefull Paul. I’m currently updating my comment code to use the '] thingy.
Haven’t had an issue with it yet! Keep it up!

I’d love a version released for Linux! :smiley:

For Windows and Linux I need to work on a few things. Also, since I don’t spend a lot of time in either of those OSes, I’d need people willing to do heavier testing / reporting to deal with any platform specific issues.

haha! That comment became mine! Comment theft! :stuck_out_tongue:

I’d be happy to help test on Linux, for what it’s worth.

Albin, I don’t know how, but you just chimed in for a Linux version too! :smiley:

For alpha software it works well. I ran it against a few of my apps and seemed to parse them without any issues. Cant wait to see the finished product.

Weird, forum glitch?

I’m willing to test on Windows. Professional Xojo user on Windows for my day time job.

One request -

Since I’m a C / C++ programmer for the bulk of my coding efforts, I use the “//[SPACE]” comment option. Could you update the project to support “// [” as the delimiter as well?

I’ll look into it - but did you mean:
// ]
so it is similar to the existing:
']
or was the left bracket important?

Yes, sorry. Just out of anesthesia and mistyped the ] :).

hope you are doing well.

Thanks, Scott - Colonoscopy. Hope you’ve got one scheduled for your 50’th :).

Liking it a lot!

I have one question/concern/desire so far:

I like to document my method parameters. I was doing that at the top of the method with comments, but with xjDocs I’d like to create tables for the parameters, like what you do for constants. The problem is that the MultiMarkDown tables don’t look like your constants tables.

You appear to be creating your constants tables as “table -> tbody -> tr -> td” and the style sheet targets the “tr:first-child td” element, making the header row have a nice light blue background with the text aligned center. Very nice.

But MultiMarkdown is doing “table -> thead -> tr -> th”, so the style sheet doesn’t catch it, and it ends up looking very different. The table header has a white background and the text is not centered. Not very nice, and not consistent with the constants table.

Is there a way to get a table that matches your constants table, or a way to customize the style sheet to target the layout that MultiMarkdown is creating?

Here’s an example of a comment I would put at the top of a method that would result in a MultiMarkdown table:

'] This method does wonderful things.
'] 
'] #Parameters
'] | Name     | Type    | Description      |
'] |:---------|:--------|:-----------------|
'] | paramOne | Integer | No letters here. |
'] | paramTwo | Double  | It floats.       |
'] 
'] #Returns
'] Pure *magic.

Even better than having to create my own table (because typing all of the dashes and bars is a pain) is if there was an XJD tag that would allow me to describe the method parameters in the code while also outputting a pretty table for the docs. Something like:

'] This method does wonderful things.
'] 
'] [XJD:SECTION:PARAMS]
'] paramOne   Integer  No letters here.
'] paramTwo   Double   It floats.

Like it so far also. Is there some advice/docs/whatever to generate html templates that we can use instead of the default one?
Also is there advice/docs/etc for using an alternative CSS file?

that output so far looks like it could be used for building either DASH docset and/or ePUB doc with a little packaging and tweaking the templates/CSS.

thanks