Thread overview
Improving http://dlang.org/library/index.html
Jan 12, 2015
Peter Alexander
Jan 12, 2015
Mathias LANG
Jan 12, 2015
Mathias LANG
January 11, 2015
I'm looking into ways to improve http://dlang.org/library/index.html. Specifically I want to remove (some of) the std.c modules or at least move them below, render the module names in code font, etc.

Again, ddox is rather opaque. Is there a source for that page, or is it hardcoded somewhere? Searching for the title 'API documentation' yields no results.


Thanks,

Andrei
January 11, 2015
what about making it multi column like on
http://en.cppreference.com/w/
January 11, 2015
On 1/11/15 3:38 PM, Robert burner Schadek wrote:
> what about making it multi column like on
> http://en.cppreference.com/w/

A nice possibility, though I do like the entity + blurb layout. -- Andrei
January 12, 2015
On Sunday, 11 January 2015 at 20:22:02 UTC, Andrei Alexandrescu wrote:
> I'm looking into ways to improve http://dlang.org/library/index.html. Specifically I want to remove (some of) the std.c modules or at least move them below, render the module names in code font, etc.
>
> Again, ddox is rather opaque. Is there a source for that page, or is it hardcoded somewhere? Searching for the title 'API documentation' yields no results.
>
>
> Thanks,
>
> Andrei

Surely what matters most should be at the top, not the C bindings :)

So, assuming you know the basics of diet templates (if not: http://vibed.org/templates/diet ), you should know that ddox is based on a views hierarchy.
You have `layout.dt` at the base of the hierarchy, then `ddox.layout.dt`, then, either `ddox.overview.dt` (which is the `index.html` we're talking about), `ddox.module.dt`, `ddox.docpage.dt`. `ddox.docpage.dt` includes various other templates to present a page that'll depend of the kind of symbol. Those are the ddox.inc.*.dt pages:
https://github.com/rejectedsoftware/ddox/tree/master/views

The inheritance can be overriden, and so should the includes (never tried it though).

TL;DR: Define a `ddox.overview.dt` in the `views` folder (original source: https://github.com/rejectedsoftware/ddox/blob/master/views/ddox.overview.dt ). Then, as you see, you can just use D code to generate HTML.
January 12, 2015
lets combine both there is enough space, something like

|| name | desc || name | desc ||
January 12, 2015
On 1/11/15 4:01 PM, Mathias LANG wrote:
> On Sunday, 11 January 2015 at 20:22:02 UTC, Andrei Alexandrescu wrote:
>> I'm looking into ways to improve http://dlang.org/library/index.html.
>> Specifically I want to remove (some of) the std.c modules or at least
>> move them below, render the module names in code font, etc.
>>
>> Again, ddox is rather opaque. Is there a source for that page, or is
>> it hardcoded somewhere? Searching for the title 'API documentation'
>> yields no results.
>>
>>
>> Thanks,
>>
>> Andrei
>
> Surely what matters most should be at the top, not the C bindings :)

Yes, the sorting order is björked in several ways.

> So, assuming you know the basics of diet templates (if not:
> http://vibed.org/templates/diet ), you should know that ddox is based on
> a views hierarchy.
> You have `layout.dt` at the base of the hierarchy, then
> `ddox.layout.dt`, then, either `ddox.overview.dt` (which is the
> `index.html` we're talking about), `ddox.module.dt`, `ddox.docpage.dt`.
> `ddox.docpage.dt` includes various other templates to present a page
> that'll depend of the kind of symbol. Those are the ddox.inc.*.dt pages:
> https://github.com/rejectedsoftware/ddox/tree/master/views
>
> The inheritance can be overriden, and so should the includes (never
> tried it though).
>
> TL;DR: Define a `ddox.overview.dt` in the `views` folder (original
> source:
> https://github.com/rejectedsoftware/ddox/blob/master/views/ddox.overview.dt
> ). Then, as you see, you can just use D code to generate HTML.

Thanks!

Could someone please get on this? The few of us working on this can't do everything. Most of the work involved is highly parallelizable.

Please? Please? With sugar on top?


Thanks.

Andrei

January 12, 2015
On Sunday, 11 January 2015 at 23:54:16 UTC, Andrei Alexandrescu wrote:
> On 1/11/15 3:38 PM, Robert burner Schadek wrote:
>> what about making it multi column like on
>> http://en.cppreference.com/w/
>
> A nice possibility, though I do like the entity + blurb layout. -- Andrei

Most of those blurbs add little value beyond what the name of the module already provides.

I'd prefer if they were ditched and instead the modules were categorized into larger groups:

core - std.algorithm, std.range, std.array, etc.
io - std.file, std.csv, std.mmfile, etc.
strings - std.string, std.uni, std.utf, etc.
math - std.bigint, std.math, std.mathspecial, std.numeric, etc.
etc.

The purpose of that page (as I see it) is for people to find what they need quickly. I think categorization would be a better format to achieve that.
January 12, 2015
On 1/11/15 4:28 PM, Peter Alexander wrote:
> On Sunday, 11 January 2015 at 23:54:16 UTC, Andrei Alexandrescu wrote:
>> On 1/11/15 3:38 PM, Robert burner Schadek wrote:
>>> what about making it multi column like on
>>> http://en.cppreference.com/w/
>>
>> A nice possibility, though I do like the entity + blurb layout. -- Andrei
>
> Most of those blurbs add little value beyond what the name of the module
> already provides.

That may as well be a matter with the documentation itself.

> I'd prefer if they were ditched and instead the modules were categorized
> into larger groups:
>
> core - std.algorithm, std.range, std.array, etc.
> io - std.file, std.csv, std.mmfile, etc.
> strings - std.string, std.uni, std.utf, etc.
> math - std.bigint, std.math, std.mathspecial, std.numeric, etc.
> etc.
>
> The purpose of that page (as I see it) is for people to find what they
> need quickly. I think categorization would be a better format to achieve
> that.

I think that would be nice. Any chance you could follow with a proof of concept?


Andrei

January 12, 2015
On Monday, 12 January 2015 at 00:15:18 UTC, Andrei Alexandrescu wrote:
> Thanks!
>
> Could someone please get on this? The few of us working on this can't do everything. Most of the work involved is highly parallelizable.
>
> Please? Please? With sugar on top?
>
>
> Thanks.
>
> Andrei

I would love to, but won't be able to spend much time on it before February.
Also, I was thinking that later on we could have the docs of older versions, would that be a good idea ?
January 12, 2015
On 1/11/15 4:37 PM, Mathias LANG wrote:
> On Monday, 12 January 2015 at 00:15:18 UTC, Andrei Alexandrescu wrote:
>> Thanks!
>>
>> Could someone please get on this? The few of us working on this can't
>> do everything. Most of the work involved is highly parallelizable.
>>
>> Please? Please? With sugar on top?
>>
>>
>> Thanks.
>>
>> Andrei
>
> I would love to, but won't be able to spend much time on it before
> February.

Hopefully someone will do that sooner, but no worries there'll be plenty of related work left.

> Also, I was thinking that later on we could have the docs of older
> versions, would that be a good idea ?

Yes, I wanted to do that for a while.


Andrei