www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - ddox documentation generator

reply =?ISO-8859-15?Q?S=F6nke_Ludwig?= <sludwig outerproduct.org> writes:
The documentation generator used for vibed.org (e.g.
http://vibed.org/api/vibe.core.file/FileStream) is now available as a
stand-alone project:

https://github.com/rejectedsoftware/ddox

also available as a VPM module:
http://registry.vibed.org/view_package/ddox

Features:

 - Supports DDOC sections and macros
 - Fully interlinked types
 - Automatically inherits members and documentation from base classes
 - Clean structure without endless spaghetti pages (customizable)
 - Diet template based and thus fully customizable output
 - Built-in HTTP server for local docs serving
 - Easily embeddable into existing vibe.d based sites
 - Can generate offline documentation as HTML files
 - Function for filtering the DMD .json file by module prefixes,
protection level and doc comment
Oct 07 2012
next sibling parent Jacob Carlborg <doob me.com> writes:
On 2012-10-07 18:06, S÷nke Ludwig wrote:
 The documentation generator used for vibed.org (e.g.
 http://vibed.org/api/vibe.core.file/FileStream) is now available as a
 stand-alone project:

 https://github.com/rejectedsoftware/ddox

 also available as a VPM module:
 http://registry.vibed.org/view_package/ddox

 Features:

   - Supports DDOC sections and macros
   - Fully interlinked types
   - Automatically inherits members and documentation from base classes
   - Clean structure without endless spaghetti pages (customizable)
   - Diet template based and thus fully customizable output
   - Built-in HTTP server for local docs serving
   - Easily embeddable into existing vibe.d based sites
   - Can generate offline documentation as HTML files
   - Function for filtering the DMD .json file by module prefixes,
 protection level and doc comment

This looks awesome. -- /Jacob Carlborg
Oct 07 2012
prev sibling next sibling parent reply Nick Sabalausky <SeeWebsiteToContactMe semitwist.com> writes:
Server overloaded? Trying to connect to 'vibed.org' just hangs
(without actually timing out, at least not yet).
Oct 07 2012
next sibling parent Chad J <chadjoan __spam.is.bad__gmail.com> writes:
On 10/07/2012 05:33 PM, Nick Sabalausky wrote:
 Server overloaded? Trying to connect to 'vibed.org' just hangs
 (without actually timing out, at least not yet).

Same for me.
Oct 07 2012
prev sibling parent reply =?ISO-8859-1?Q?S=F6nke_Ludwig?= <sludwig outerproduct.org> writes:
Am 10/7/2012 11:33 PM, schrieb Nick Sabalausky:
 Server overloaded? Trying to connect to 'vibed.org' just hangs
 (without actually timing out, at least not yet).
 

Yeah.. it always has to happen when something gets announced and at night (running for months without any problem). The proxy process hung, only reacting to KILL.
Oct 08 2012
next sibling parent =?ISO-8859-1?Q?S=F6nke_Ludwig?= <sludwig outerproduct.org> writes:
Am 10/8/2012 9:29 AM, schrieb S÷nke Ludwig:
 Am 10/7/2012 11:33 PM, schrieb Nick Sabalausky:
 Server overloaded? Trying to connect to 'vibed.org' just hangs
 (without actually timing out, at least not yet).

Yeah.. it always has to happen when something gets announced and at night (running for months without any problem). The proxy process hung, only reacting to KILL.

Btw. I have some serious memory consumption problems during compilation and swap was not enabled on the server. I noticed that somtimes processes got killed while the compiler was run. I hope this was the reason for the hanging process as well - at least I recompiled several times around the time when this happened.
Oct 08 2012
prev sibling parent =?ISO-8859-1?Q?S=F6nke_Ludwig?= <sludwig outerproduct.org> writes:
Am 10/8/2012 9:29 AM, schrieb S÷nke Ludwig:
 Am 10/7/2012 11:33 PM, schrieb Nick Sabalausky:
 Server overloaded? Trying to connect to 'vibed.org' just hangs
 (without actually timing out, at least not yet).

Yeah.. it always has to happen when something gets announced and at night (running for months without any problem). The proxy process hung, only reacting to KILL.

It turned out that this was due to a workaround I made to get std.zlib.UnCompress work reliably (well, not quite, obviously). http://d.puremagic.com/issues/show_bug.cgi?id=8779
Oct 08 2012
prev sibling next sibling parent reply "Mr. Anonymous" <mailnew4ster gmail.com> writes:
On Sunday, 7 October 2012 at 16:18:27 UTC, S├Ânke Ludwig wrote:
 The documentation generator used for vibed.org (e.g.
 http://vibed.org/api/vibe.core.file/FileStream) is now 
 available as a
 stand-alone project:

 https://github.com/rejectedsoftware/ddox

 also available as a VPM module:
 http://registry.vibed.org/view_package/ddox

 Features:

  - Supports DDOC sections and macros
  - Fully interlinked types
  - Automatically inherits members and documentation from base 
 classes
  - Clean structure without endless spaghetti pages 
 (customizable)
  - Diet template based and thus fully customizable output
  - Built-in HTTP server for local docs serving
  - Easily embeddable into existing vibe.d based sites
  - Can generate offline documentation as HTML files
  - Function for filtering the DMD .json file by module prefixes,
 protection level and doc comment

Can it be used for Phobos documentation on dlang.org? Also see my previous post, "Getting started with D - Phobos documentation sucks": http://forum.dlang.org/thread/pctnuoxbqzyuazivpvwx forum.dlang.org
Oct 10 2012
parent reply =?UTF-8?B?U8O2bmtlIEx1ZHdpZw==?= <sludwig outerproduct.org> writes:
Am 10/10/2012 5:12 PM, schrieb Mr. Anonymous:
 On Sunday, 7 October 2012 at 16:18:27 UTC, S├Ânke Ludwig wrote:
 The documentation generator used for vibed.org (e.g.
 http://vibed.org/api/vibe.core.file/FileStream) is now available as a
 stand-alone project:

 https://github.com/rejectedsoftware/ddox

 also available as a VPM module:
 http://registry.vibed.org/view_package/ddox

 Features:

  - Supports DDOC sections and macros
  - Fully interlinked types
  - Automatically inherits members and documentation from base classes
  - Clean structure without endless spaghetti pages (customizable)
  - Diet template based and thus fully customizable output
  - Built-in HTTP server for local docs serving
  - Easily embeddable into existing vibe.d based sites
  - Can generate offline documentation as HTML files
  - Function for filtering the DMD .json file by module prefixes,
 protection level and doc comment

Can it be used for Phobos documentation on dlang.org? Also see my previous post, "Getting started with D - Phobos documentation sucks": http://forum.dlang.org/thread/pctnuoxbqzyuazivpvwx forum.dlang.org

I generated some docs and put them here: http://vibed.org/temp/phobos/index.html It works (there are warnings during generation, so maybe a few details are missing), but could look better, as the docs are quite tailored towards their current representation/layout in some parts.
Oct 11 2012
parent reply =?UTF-8?B?U8O2bmtlIEx1ZHdpZw==?= <sludwig outerproduct.org> writes:
There were still some bugs and inconsistencies with how DMD handles DDOC
macros. I've uploaded a fixed version, also with syntax highlighting
enabled in text sections*. std.algorithm for example now also has its
overview table (with invalid links of course):

http://vibed.org/temp/phobos/std/algorithm.html

Generally, the phobos docs look much better now.

* you may need to press F5 to reload the style sheet
Oct 11 2012
parent =?UTF-8?B?U8O2bmtlIEx1ZHdpZw==?= <sludwig outerproduct.org> writes:
Am 10/12/2012 10:52 AM, schrieb Jonas Drewsen:
 On Thursday, 11 October 2012 at 18:03:18 UTC, S├Ânke Ludwig wrote:
 There were still some bugs and inconsistencies with how DMD handles DDOC
 macros. I've uploaded a fixed version, also with syntax highlighting
 enabled in text sections*. std.algorithm for example now also has its
 overview table (with invalid links of course):

 http://vibed.org/temp/phobos/std/algorithm.html

 Generally, the phobos docs look much better now.

 * you may need to press F5 to reload the style sheet

Seems to me that some modules are missing. E.g. where is std.net.curl ? /Jonas

I had to remove std.concurrency and std.net.curl, which depends on std.concurrency, because there were some compiler errors.
Oct 12 2012
prev sibling next sibling parent "Jonas Drewsen" <jdrewsen nospam.com> writes:
On Thursday, 11 October 2012 at 18:03:18 UTC, S├Ânke Ludwig wrote:
 There were still some bugs and inconsistencies with how DMD 
 handles DDOC
 macros. I've uploaded a fixed version, also with syntax 
 highlighting
 enabled in text sections*. std.algorithm for example now also 
 has its
 overview table (with invalid links of course):

 http://vibed.org/temp/phobos/std/algorithm.html

 Generally, the phobos docs look much better now.

 * you may need to press F5 to reload the style sheet

Seems to me that some modules are missing. E.g. where is std.net.curl ? /Jonas
Oct 12 2012
prev sibling next sibling parent =?ISO-8859-15?Q?S=F6nke_Ludwig?= <sludwig outerproduct.org> writes:
Little styling update: The module tree is now collapsible and the
default styling has been improved. Also the anchors in std.algorithm
work now (although not optimal, but that's a problem of the docs and not
the generator)

http://vibed.org/temp/phobos/std/algorithm.html
http://vibed.org/api/vibe.http.server/

Apart from the non-working links it starts to look quite statisfactory.

(Pressing F5 is necessary again, because the CSS files changed.)
Oct 15 2012
prev sibling parent =?ISO-8859-15?Q?S=F6nke_Ludwig?= <sludwig outerproduct.org> writes:
Okay the more or less final incarnation now includes full text symbol
detection with complete cross linking. I just had to modify some macros
in std.ddoc and algorithm.d to avoid that they produce their own links
and the result is this:

http://vibed.org/temp/phobos/std/algorithm.html
http://vibed.org/temp/phobos/std/datetime.html

There are still some glitches for various reasons and no links are
generated in code blocks right now. But all this linking requires
absolutely no manual linking or use of macros anymore (except escaping
identifiers that should not be linked with an underscore)
Oct 15 2012