Sur GitHub, je veux construire une table contenant des morceaux de code dans Markdown. Cela fonctionne très bien sauf quand je mets un caractère de pipe (c'est-à-dire |) entre les caractères de backtick (c'est-à-dire `).
Voici ce que je veux:
a | r
------------|-----
`a += x;` | r1
`a |= y;` | r2
Le problème est que la barre verticale dans l'instruction de code de la deuxième ligne est interprétée comme un délimiteur de colonne. Ensuite, le rendu du tableau semble assez moche. Comment pourrais-je éviter cela?
Notez que j'ai déjà essayé d'utiliser le |
Du code HTML, mais il produit a |= y;
.
Depuis mars 2017, l'utilisation de tuyaux d'échappement est beaucoup plus simple:
\|
Voir d'autres réponses.
Si vous supprimez les backticks (`), utilisez le |
pirater les œuvres
a | r
------------|-----
`a += x;` | r1
a |= y; | r2
et produit la sortie suivante
Alternativement, vous pouvez remplacer les backticks (`) par un <code></code>
balisage qui résout mieux les problèmes en préservant le rendu
a | r
------------|-----
`a += x;` | r1
<code>a |= y;</code> | r2
générer la sortie suivante
À partir de la mi-2017, le tuyau peut simplement être échappé avec une barre oblique inverse, comme ceci: \|
Cela fonctionne à l'intérieur et à l'extérieur des backticks.
Le code HTML peut désormais être réutilisé également, mais uniquement en dehors des raccourcis.
Réponse précédente:
En mars 2017, la réponse acceptée a cessé de fonctionner car GitHub a changé son analyseur de démarque . L'utilisation d'un autre symbole unicode qui ressemble à un tuyau semble être la seule option actuellement, par exemple:
ǀ (U + 01C0, clic dentaire lettre latine)
∣ (U + 2223, le symbole se divise)
⎮ (U + 23AE, extension intégrale)
Vous pouvez échapper au |
dans une table dans GFM avec un \
ainsi:
a | r
------------|-----
`a += x;` | r1
`a \|= y;` | r2
Voir https://github.github.com/gfm/#example-191 ou https://github.com/dotnet/csharplang/pull/74 pour un exemple .