Wie entkomme ich einem Pipe-Zeichen in einer Code-Anweisung in einer Markdown-Tabelle?

100

Auf GitHub möchte ich in Markdown eine Tabelle mit Codeteilen erstellen. Es funktioniert gut, außer wenn ich ein Pipe-Zeichen (dh |) zwischen die Backtick-Zeichen (dh `) setze.

Folgendes möchte ich:

      a     |  r  
------------|-----
 `a += x;`  |  r1
 `a |= y;`  |  r2

Das Problem ist, dass der vertikale Balken in der Code-Anweisung der zweiten Zeile als Spaltenbegrenzer interpretiert wird. Dann sieht das Tabellen-Rendering ziemlich hässlich aus. Wie könnte ich das vermeiden?

Beachten Sie, dass ich bereits versucht habe, den |HTML-Code zu verwenden, aber er erzeugt a |= y;.

Marc de Verdelhan
quelle

Antworten:

142

Ab März 2017 ist die Verwendung von entweichenden Rohren viel einfacher: \|Siehe andere Antworten.

Wenn Sie die Backticks ( ` ) entfernen, funktioniert die Verwendung des |Hacks

      a     |  r  
------------|-----
 `a += x;`  |  r1
 a |= y;  |  r2

und erzeugt die folgende Ausgabe

Geben Sie hier die Bildbeschreibung ein

Alternativ können Sie die Backticks ( ` ) durch ein <code></code>Markup ersetzen, das die Probleme besser behebt, indem das Rendering beibehalten wird

      a     |  r  
------------|-----
 `a += x;`  |  r1
<code>a &#124;= y;</code>  |  r2

Generieren der folgenden Ausgabe

Geben Sie hier die Bildbeschreibung ein

nulltoken
quelle
4
Ja, mit <code></code>Markup gearbeitet! Vielen Dank.
Marc de Verdelhan
Bitbucket erlaubt keine <code>-blocks: - / gibt es eine andere Möglichkeit?
Sergej
2
Auf GitHub \|funktioniert das Markdown-Escape . Die Leute springen zu schnell zu HTML, ohne dem Abschlag zu entkommen.
jnm2
Ab März 2019 müssen Sie in Gitlab Wikis noch " &#124;" im Markup-Code verwenden.
Knb
Immer noch nicht von Bitbucket unterstützt siehe bitbucket.org/site/master/issues/17106/…
Lorenzo Solano
19

Ab Mitte 2017 kann das Rohr einfach mit einem Backslash versehen werden, wie folgt: \|

Dies funktioniert sowohl innerhalb als auch außerhalb von Backticks.

Der HTML-Code kann jetzt auch wieder verwendet werden, jedoch nur außerhalb von Backticks.

Vorherige Antwort:

Ab März 2017 funktioniert die akzeptierte Antwort nicht mehr, da GitHub den Markdown-Parser geändert hat . Die Verwendung eines anderen Unicode-Symbols, das einer Pipe ähnelt, scheint derzeit die einzige Option zu sein, z.

ǀ (U + 01C0, lateinischer Buchstabe Zahnklick)

∣ (U + 2223, Symbol teilt sich)

⎮ (U + 23AE, Integral Extension)

Janosch
quelle
2
Die akzeptierte Antwort scheint für mich in GitHub gut zu funktionieren, sowohl in einem Gist als auch in der von mir eingereichten Pull-Anfrage.
Iiridayn