Les blocs de code dans les e-mails ont des nouvelles lignes vides

Code blocks appear to be formatted with an empty newline between each line ONLY in the HTML portion of emails. They appear correctly on both the forum itself, and in the plain text portion of the email. This is not an email formatting / CSS problem - there is an actual newline inserted in the source ONLY in the email case.

An example: [iFFT Freeze/Scrub - #25 by toneburst - Questions - scsynth]

The original source text of the post looks like:

The formatted post on the website looks like:

The HTML email received, however, looks like:

In the source for the email, you can see that all newlines have been doubled:

4 « J'aime »

I agree, this is tends to look quite off.

@techAPJ can you investigate?

3 « J'aime »

I am unable to repro this on latest Discourse version.

HTML:

Text:

This might be an issue with your email client.

Je vois toujours le problème avec les e-mails envoyés depuis la version 2.9.0.beta1 - veuillez ignorer le reste si cela a été corrigé depuis :slight_smile:

Cela n’est pas lié à un client de messagerie spécifique - la deuxième capture d’écran que j’ai postée concerne le code HTML brut généré pour les e-mails. Mais en fait, il est plus instructif de regarder le contenu réel de l’e-mail (un extrait…):

<pre style="word-wrap: break-word; max-width: 694px;"><code style="display: block; background-color: #f9f9f9; overflow: auto; padding: 5px;; background-color: #f9f9f9; padding: 2px 5px;">
(
// This expects two keys to be defined: ~history (the list) and ~recordKey (which key to record)
Pdef(\keyRecorder, Pbind(
	\callback, Pfunc({
		|event|
		event[\callback].addFunc({ // combine your record func with any previous callback that was there (it's okay if its nil)
			~history.add(currentEnvironment[~recordKey])
		}).postln;
	})
));

Il est clair qu’il y a (a) de VRAIS sauts de ligne là où il devrait y en avoir dans le code, et (b) des caractères =0D (retours chariot) à la fin de chaque ligne. A ma connaissance, tous les sauts de ligne à l’intérieur d’un <pre> sont censés être interprétés littéralement, ce qui explique les doubles sauts de ligne.

Je peux reproduire le problème dans Gmail, et en ouvrant directement la partie HTML du message électronique dans un navigateur (après avoir remplacé les caractères encodés en quoted-printable comme =0D). Cela me rend curieux :

  • Voyez-vous les mêmes (sauts de ligne plus =0D) lorsque vous regardez la version brute de l’e-mail que vous avez publiée ?
  • Si oui, à quoi ressemble la source HTML de la vue “correcte” que vous avez publiée ? Votre client de messagerie supprime-t-il d’une manière ou d’une autre les =0D (ou les sauts de ligne, d’ailleurs) ?

Dans tous les cas, même s’il s’agit d’un problème spécifique à Gmail, il vaut probablement la peine d’examiner cela, car Gmail est de loin le client de messagerie le plus courant.