unofficial mirror of meta@public-inbox.org
 help / color / mirror / Atom feed
From: Charles Zhang <csalinezh@gmail.com>
To: meta@public-inbox.org
Subject: Considerations about format=flowed support and web page responsiveness
Date: Mon, 13 Feb 2023 12:59:25 +0200	[thread overview]
Message-ID: <20230213105925.6zccabv3yldniqam@m> (raw)

I'm glad to see that support for RFC 3676 (format=flowed) has been put 
into TODO.[1] I want to write down some ideas and questions about the 
implementation public-inbox might have.

First I would like to state my position for format=flowed: It enables 
plain text emails to be reflowed by readers' email clients according to 
their preferences, which
1) enables reader softwares to reflow text to fit the display region 
    not suitable for the convention of 72 characters per line, the most 
    common beneficiary would be mobile phone users, and
2) enables proper quoting behaviour for deeply nested text (irrelevant 
    for pure archiver like public-inbox).

These problems are known as "embarrassing line wrap" in RFC 3676 and 
can be solved by format=flowed it proposed. Whether the text should be 
fluid is a matter of personal opinion. To me, the presence of 
format=flowed in Content-Type signifies sender's intent to make it 
flow. Thus it should preferably be honoured during presentation by the 
reader software.

I have done a quick survey on current mailing list archivers' support 
for f=f. Services that supports it include:

Archiver software: MHonArc, Hypermail, (less notably) Apache Pony Mail
Archive website: mail-archive.com (proprietary archiver?), spinics.net (mhonarc)

These services simply remove the soft line breaks (<space> followed by 
CRLF). Browsers will do the typesetting as usual.
(For the sake of completeness, <space> need not be space, but 
configurable by the DelSp parameter in RFC 3676)

f=f allows archivers to convert text quoted with leading < into 
HTML <blockquote>, removing the leading angle bracket. This approach 
should be preferred since it preserves the semantic meaning in 
generated HTML, which also helps accessibility. Nesting relationship 
seems to be customarily presented with a solid bar on the left (thick 
left border). mail-archive.com and mhonarc behave as such. hypermail 
seems to only unwrap ordinary texts, leaving quoted part with <, and 
apply a different color to differentiate nesting levels using things 
like class="quotelev2".

Services that don't support f=f include:

Archiver software: Pipermail (GNU Mailman 2), HyperKitty (GNU Mailman 3), (less notably) ietf mailarch
Archive website: groups.google.com, marc.info, narkive.com, (less notably) markmail.org

These services appear to simply ignore f=f. They might or might not 
strip the trailing <space> from generated HTML. Whether those spaces 
are visible to users (when selecting or copying text) depends on their 
CSS styles (white-space) and HTML white space collapsing rules.

Therefore, current f=f archiver implementations behave similarly, and 
I think public-inbox should follow that model by letting client 
browsers to reflow the text. This makes the mailing list archive (at 
least f=f enabled mails) much more readable to phone users (which 
makes up the majority of Internet users currently). A little CSS tweaks 
should make an f=f mail doesn't look out of place in a thread with 
adjacent fixed mails.

If the implementation for format=flowed will proceed, I have some 
additional thoughts for the look and feel of public-inbox.

The current public-inbox website, like traditional plain text email, 
is modelled after a fixed display region. It uses hard linebreaks to 
keep line width at about 68 characters. <meta name="viewport"> is not 
declared in <head>. Using preformatted text, as discussed in the 
beginning, is personal design taste of the developer. However, I 
consider this to be an opportunity to consider whether the website 
should be made more responsive, by ditching <pre> in help texts and 
use styles like max-width to maintain a reasonable line width.

[1] https://public-inbox.org/meta/20220901185829.30117-1-e@80x24.org/

             reply	other threads:[~2023-02-13 10:59 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-13 10:59 Charles Zhang [this message]
2023-02-14  7:35 ` Considerations about format=flowed support and web page responsiveness Eric Wong
2023-02-18 20:51   ` Charles Zhang
2023-02-19 21:22     ` Eric Wong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://public-inbox.org/README

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230213105925.6zccabv3yldniqam@m \
    --to=csalinezh@gmail.com \
    --cc=meta@public-inbox.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).