Discourse convertit automatiquement la liste copiée-collée délimitée par des tabulations en tableau

Si un utilisateur copie et colle

	```sh
	systemctl reboot
	```

dans le formulaire d’édition de Discourse, ce contenu devient

||```sh|
|---|---|
||systemctl reboot|
||```|

C’est une erreur – c’est évidemment une liste, pas un tableau.

J’ai testé cela sur discuss.kde.org et meta.discourse.org.

systemctl reboot
systemctl reboot

@JammyDodger, réessayez. J’ai supprimé le numéro de liste. Cela semble fonctionner de manière fiable maintenant.


Au fait, la citation sélective de votre commentaire me donne

[quote="JammyDodger, post:2, topic:266325"]
Redémarrage :

0. ```
systemctl reboot
```

```
0. Redémarrage :
	```sh
	systemctl reboot
	```
```
[/quote]

…est-ce correct ?

Je dois admettre que je ne suis pas tout à fait sûr de ce que je suis censé copier-coller à ce stade. :slight_smile:

Haha.

	```sh
	systemctl reboot
	```

Lorsque je copie le texte de la page en le sélectionnant par glisser-déposer, j’obtiens :

Mais en le copiant à l’aide du bouton de copie :

J’obtiens correctement le texte attendu lors du collage.

Contenu du presse-papiers à l’aide du bouton “copier” :

TEXT:
b'```sh\\n\\tsystemctl reboot\\n\\t```'
text/plain:
b'```sh\\n\\tsystemctl reboot\\n\\t```'

Contenu du presse-papiers en le sélectionnant par glisser-déposer sur la page :

TEXT:
b'\\t```sh\\n\\tsystemctl reboot\\n\\t```'
text/html:
b'<span style="color: rgb(199, 199, 199); font-family: Consolas, Menlo, Monaco, &quot;Lucida Console&quot;, &quot;Liberation Mono&quot;, &quot;DejaVu Sans Mono&quot;, &quot;Bitstream Vera Sans Mono&quot;, &quot;Courier New&quot;, monospace; font-size: 17.008px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(60, 60, 60); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; display: inline !important; float: none;">\\t```sh\\n\\tsystemctl reboot\\n\\t```</span>'
text/plain:
b'\\t```sh\\n\\tsystemctl reboot\\n\\t```'

C’est probablement le taquet de tabulation au début de chaque ligne qui sème la confusion. Peut-être que lors de l’analyse du contenu du presse-papiers, la première colonne est toujours vide, nous ne la traitons pas comme une liste.

Cela semble être une situation un peu pathologique. Existe-t-il une situation naturelle où cela se produit ? Normalement, il n’y a pas de caractères de tabulation dans les publications.

Pour un ordinateur, cela ressemble exactement à un tableau délimité par des tabulations avec une première colonne vide.

7 « J'aime »

une chose que j’ai apprise au fil des ans, c’est de ne jamais faire confiance à la sélection par glisser-déposer pour copier-coller…

Cela devrait probablement être déterminé par l’utilisateur, en utilisant

```tsv
```

Après tout, un tableau délimité par des tabulations ne devrait pas fonctionner avec le retour à la ligne activé, il doit donc plutôt être encapsulé dans quelque chose qui force le défilement.

Et, bien sûr, aussi parce que l’indentation (pour délimiter une liste ou un bloc de code clôturé)

est aussi du markdown très valide (et courant).