La coloration syntaxique n'est pas conservée lors du copier-coller vers un endroit prenant en charge le texte coloré

Oui ! Je constate le même comportement.

Et, strictement parlant, ce n’est pas un bug. Firefox copie le HTML exactement tel que demandé :

<meta http-equiv="content-type" content="text/html; charset=utf-8">
<p dir="auto">Lorsque j'ai copié ce qui suit, depuis Discourse, vers mon client de messagerie :</p>
<pre data-code-wrap="diff" dir="auto" class="codeblock-buttons">
		<div class="codeblock-button-wrapper" style="right: 0px;"></div>
		<code class="lang-diff hljs language-diff" data-highlighted="yes">
			<span class="hljs-meta">@@ -1,11 +1,11 @@</span>
			<span class="hljs-deletion">-Young volunteer award – celebrating young volunteers, aged 16-24, who go the extra mile in their local communities, demonstrating our values and the importance of connection and action.</span>
			<span class="hljs-addition">+The Young Volunteer Award celebrates young volunteers, aged 16–24, who go the extra mile in their local communities, demonstrating our values and the importance of connection and action.</span>
		</code>
	</pre>

La différence résultante après le collage provient du fait que Chromium intègre les styles en ligne, tandis que Firefox ne le fait pas. Réduire cela à une seule ligne met en évidence[1] ce qui se passe :

<span
  class="hljs-deletion">
-Young volunteer award – celebrating young volunteers, aged 16-24, who go the extra mile in their local communities, demonstrating our values and the importance of connection and action.
</span>
<span
  class="hljs-deletion"
  style="background: none 0% 0% / auto repeat scroll padding-box border-box rgb(255, 224, 224); color: rgb(192, 45, 46);">
-Young volunteer award – celebrating young volunteers, aged 16-24, who go the extra mile in their local communities, demonstrating our values and the importance of connection and action.
</span>

(sauts de ligne ajoutés)

Chromium intègre depuis class="hljs-deletion" le style CSS en ligne style="background: none 0% 0% / auto repeat scroll padding-box border-box rgb(255, 224, 224); color: rgb(192, 45, 46);" dans le span, car ce dans quoi il colle n’a probablement pas ce style.


  1. hein ↩︎

1 « J'aime »