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

Les blocs de code semblent être formatés avec une ligne vide entre chaque ligne uniquement dans la partie HTML des e-mails. Ils s’affichent correctement à la fois sur le forum lui-même et dans la partie texte brut de l’e-mail. Il ne s’agit pas d’un problème de formatage ou de CSS des e-mails : une véritable saut de ligne est inséré dans le code source uniquement dans le cas des e-mails.

Un exemple : [iFFT Freeze/Scrub - #25 by toneburst - Questions - scsynth]

Le texte source original du message ressemble à ceci :

Le message formaté sur le site web ressemble à ceci :

L’e-mail HTML reçu, cependant, ressemble à ceci :

Dans le code source de l’e-mail, vous pouvez voir que tous les sauts de ligne ont été doublés :

4 « J'aime »

Je suis d’accord, cela a tendance à sembler assez étrange.

@techAPJ, peux-tu enquêter ?

3 « J'aime »

Je ne parviens pas à reproduire ce problème avec la dernière version de Discourse.

HTML :

Texte :

Il se peut que cela soit un problème lié à votre client de messagerie.

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.