Los bloques de código en los correos electrónicos tienen nuevas líneas vacías

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 Me gusta

I agree, this is tends to look quite off.

@techAPJ can you investigate?

3 Me gusta

I am unable to repro this on latest Discourse version.

HTML:

Text:

This might be an issue with your email client.

Todavía veo el problema con los correos electrónicos enviados desde 2.9.0.beta1. Por favor, ignora el resto si se ha solucionado desde entonces :slight_smile:

Esto no está relacionado con un cliente de correo electrónico específico: la segunda captura de pantalla que publiqué es del HTML sin procesar que se genera para los correos electrónicos. Pero, en realidad, es más revelador observar el contenido real del correo electrónico (un fragmento…):

<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;
	})
));

Está claro que hay (a) saltos de línea REALES donde debería haber saltos de línea en el código y (b) caracteres =0D (retornos de carro) al final de cada línea. AFAIK, todos los saltos de línea dentro de un <pre> deben interpretarse literalmente, lo que explica los saltos de línea dobles.

Puedo reproducir el problema en Gmail y abriendo la parte HTML del mensaje de correo electrónico directamente en un navegador (después de reemplazar los caracteres de printable citado como =0D). Esto me da curiosidad:

  • ¿Ves lo mismo (saltos de línea más =0D) cuando miras la versión sin procesar del correo electrónico que publicaste?
  • Si es así, ¿cómo se ve el código fuente HTML de la vista “correcta” que publicaste? ¿Tu cliente de correo electrónico está eliminando de alguna manera los =0D (o los saltos de línea, para el caso)?

En cualquier caso, incluso si es un problema específico de Gmail, probablemente valga la pena investigarlo, ya que Gmail es, con diferencia, el cliente de correo electrónico más común.