Skip to content

Instantly share code, notes, and snippets.

@yak1ex
Last active March 11, 2023 05:08
Show Gist options
  • Save yak1ex/b7686c7660acde35abfacbf871a058da to your computer and use it in GitHub Desktop.
Save yak1ex/b7686c7660acde35abfacbf871a058da to your computer and use it in GitHub Desktop.
Workarounds for math notation on GItHub Markdown

GitHub Markdownでの数式表記ワークアラウンド(2023/03/11版)

はじめに

GitHub MarkdownでLaTeX表記による数式表示が可能になりましたが癖があり、意図通りに表示できない場合が多々あります。

ref. https://nschloe.github.io/2022/05/20/math-on-github.html

本稿ではそうした場合のワークアラウンド(筆者調べ)についていくつか記載します。 2023/03/11時点での記載です。 GitHub側の変更が入る場合もあるので最新の状態を反映していない可能性があります。

なお筆者はLaTeXに詳しいわけでもMarkdownに詳しいわけでもなんでもありません。

インライン$...$が認識されない

普通に$a=b$と$c=d$と書いているだけなのに認識されない。

普通に$a=b$と$c=d$と書いているだけなのに認識されない。

両端を空白で挟むことで認識されます。行頭、行末は空白なしでも構いません。

普通に $a=b$ と $c=d$ と書いているだけなのに認識されない。

$a=b$ 行頭行末は空白不要 $c=d$

普通に $a=b$$c=d$ と書いているだけなのに認識されない。

$a=b$ 行頭行末は空白不要 $c=d$

また記号と連続することで下線あるいはアスタリスクがMarkdown上の強調として解釈されることによって意図通り解釈されない場合があります。

$\mathfrak{S}_3$ italic here $a_{b-1}$

$A_{*}$ italic here $B_{*}$

$\mathfrak{S}3$ italic here $a{b-1}$

$A_{}$ italic here $B_{}$

この場合、強調として解釈されている側に空白を入れて区切ってやることで意図通り解釈されるようになります。

$\mathfrak{S}_ 3$ not italic here $a_{b-1}$

$A_{* }$ not italic here $B_{*}$

$\mathfrak{S}_ 3$ not italic here $a_{b-1}$

$A_{* }$ not italic here $B_{*}$

\(バックスラッシュ)+記号が認識されない

バックスラッシュ+記号の並びが(Markdown上で)記号に対するエスケープとして解釈されてしまうからです。 バックスラッシュを2つ並べて実際にバックスラッシュとして認識させることで回避できる場合もありますが、 テキスト上はLaTeX表記と乖離してしまうので個人的には別手段で回避するほうが望ましいと考えています。

\{\}が消失する

ref. community/community#16993

$\{ x\in\mathbb{Z} | 1\le x\le3\}$

${ x\in\mathbb{Z} | 1\le x\le3}$

バックスラッシュを並べることでも回避可能ですが、

$\\{ x\in\mathbb{Z} | 1\le x\le3\\}$

$\{ x\in\mathbb{Z} | 1\le x\le3\}$

\lbrace, \rbraceに変えてしまっても良いでしょう。

$\lbrace x\in\mathbb{Z} | 1\le x\le3\rbrace$

$\lbrace x\in\mathbb{Z} | 1\le x\le3\rbrace$

\\(バックスラッシュ2つ)で改行できない

$$
a=b\\
c=d
$$

$$ a=b\\ c=d $$

適当な環境でくるんでしまいましょう。

$$
\begin{align}
a=b\\
c=d
\end{align}
$$

$$ \begin{align} a=b\\ c=d \end{align} $$

\,\:,\;で空白を入れられない

$a\,b\:c\;d$

$$a\,b\:c\;d$$

$a,b:c;d$

$$a,b:c;d$$

バックスラッシュを並べることでも回避できますが

$a\\,b\\:c\\;d$

$$a\\,b\\:c\\;d$$

$a\,b\:c\;d$

$$a\,b\:c\;d$$

mathブロックにするとバックスラッシュ1個でも有効です。

```math
a\,b\:c\;d
```
$$a\,b\:c\;d$$

\hspaceを使ってもよいでしょう。

$a\hspace{3mu}b\hspace{4mu}c\hspace{5mu}d$

$$a\hspace{3mu}b\hspace{4mu}c\hspace{5mu}$$

$a\hspace{3mu}b\hspace{4mu}c\hspace{5mu}d$

$$a\hspace{3mu}b\hspace{4mu}c\hspace{5mu}d$$

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment