From: Pierre Giraud <pierre.giraud@dalibo.com>
To: pgsql-hackers@lists.postgresql.org
Subject: Re: Poll: are people okay with function/operator table redesign?
Date: Thu, 16 Apr 2020 17:12:28 +0200
Message-ID: <9991f78c-989e-9089-12ee-6b8d2904929f@dalibo.com> (raw)
In-Reply-To: <20662.1587048193@sss.pgh.pa.us>
References: <8691.1586798003@sss.pgh.pa.us>
<ff4b8688-c941-8bfc-5399-4f0744144773@dalibo.com>
<CAMsGm5dhAAf9YZh3scCcs_SX+2F2k1QyRPWn0hgnOX2xQOPo4Q@mail.gmail.com>
<CAFj8pRB0CL4sNuskp8NQ0g4stiOfy_Rfau35LyncwNvciJarZw@mail.gmail.com>
<CA+TgmobK4iziOm8uMJ4pS+W3VkB+OarEb+vXePxfAVMghynn6g@mail.gmail.com>
<CAKmB1PHtM0rt9Ja5_W7osrWEQsoGbZ-morn9vpzQF8rSDXwp6Q@mail.gmail.com>
<30753.1586971147@sss.pgh.pa.us>
<29261.1586989134@sss.pgh.pa.us>
<f1f6889d-8caf-b2ed-fab5-214ebcfa0a07@dalibo.com>
<20662.1587048193@sss.pgh.pa.us>
Le 16/04/2020 à 16:43, Tom Lane a écrit :
> Pierre Giraud <pierre.giraud@dalibo.com> writes:
>> Le 16/04/2020 à 00:18, Tom Lane a écrit :
>>> The main disadvantage I can see to the v2 design is that we're back
>>> to having two <rows> per function, which is inevitably going to result
>>> in PDF builds putting page breaks between those rows. But you can't
>>> have everything ... and maybe we could find a way to discourage such
>>> breaks if we tried.
>
> Further experimentation shows that the PDF toolchain is perfectly willing
> to put a page break *within* a multi-line <row>; if there is any
> preference to break between rows instead, it's pretty weak. So that
> argument is a red herring and we shouldn't waste time chasing it.
> However, there'd still be some advantage in not being dependent on CSS
> hackery to make it look nice in HTML.
>
> What we're down to wanting, at this point, is basically a para with
> hanging indent.
>
>> What about putting everything into one <table row> and use a block with
>> some left padding/margin for description + example.
>> This would solve the PDF page break issue as well as the column
>> separation border one.
>> The screenshot attached uses a <dl> tag for the descrition/example block.
>
> That looks about right, perhaps, but could you be a little clearer about
> how you accomplished that?
Attached you will find the HTML structure with associated styles.
Sorry I haven't tried to do this from the DocBook sources.
I hope this helps though.
Regards
Attachments:table_html_structure_with_dl.txt (text/plain, 1.4K) download
# HTML
<table class="table" summary="Date/Time Functions" border="1">
<thead>
<tr>
<th align="" valign="middle">
Function
<dl>
<dd>Description</dd>
<dd>Example</dd>
</dl>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<code class="function">age</code>(<code class="type">timestamp</code>, <code class="type">timestamp</code>) → <code class="returnvalue">interval</code>
<dl>
<dd>Subtract arguments, producing a <span class="quote">“<span class="quote">symbolic</span>”</span> result that uses years and months, rather than just days
</dd>
<dd>
<span>
<code class="literal">age(timestamp '2001-04-10', timestamp '1957-06-13')</code> → <code class="literal">43 years 9 mons 27 days</code>
</span>
</dd>
</dl>
</td>
</tr>
</tbody>
</table>
# CSS
#docContent table.table code.literal {
font-style: italic;
}
code.returnvalue {
font-weight: bold;
}
code.function {
font-weight: bold;
}
.replaceable > code {
font-weight: normal !important;
}
#docContent table.table dl {
margin-left: 30px;
margin-top: 5px;
}
#docContent table.table dl > dd {
margin-bottom: 0;
}
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: pierre.giraud@dalibo.com, pgsql-hackers@lists.postgresql.org
Subject: Re: Poll: are people okay with function/operator table redesign?
In-Reply-To: <9991f78c-989e-9089-12ee-6b8d2904929f@dalibo.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox