web-dev-qa-db-ja.com

GithubのREADME.mdでのラテックスレンダリング

GitHubリポジトリのREADME.mdでLaTexをレンダリングする方法はありますか?私はそれをグーグルで調べてスタックオーバーフローを検索しましたが、関連する答えはどれも実行可能ではないようです。

90
user90593

短い式で、それほど派手な数学ではない場合、インラインHTMLを使用して、ラテックスでレンダリングされた数学をcodecogsに取得し、結果のイメージを埋め込むことができます。次に例を示します。

- <img src="https://latex.codecogs.com/gif.latex?O_t=\text { Onset event at time bin } t " /> 
- <img src="https://latex.codecogs.com/gif.latex?s=\text { sensor reading }  " /> 
- <img src="https://latex.codecogs.com/gif.latex?P(s | O_t )=\text { Probability of a sensor reading value when sleep onset is observed at a time bin } t " />

次のような結果になるはずです

更新:これはEclipseでうまく機能しますが、残念ながらgithubでは機能しません。唯一の回避策は次のとおりです。

ラテックス方程式を取得し、 http://www.codecogs.com/latex/eqneditor.php に移動します。方程式が表示される領域の下部に小さなドロップダウンメニューがあり、URLを選択しますエンコードしてから、次の方法でgithubマークダウンに貼り付けます:

![equation](http://latex.codecogs.com/gif.latex?O_t%3D%5Ctext%20%7B%20Onset%20event%20at%20time%20bin%20%7D%20t)
![equation](http://latex.codecogs.com/gif.latex?s%3D%5Ctext%20%7B%20sensor%20reading%20%7D) 
![equation](http://latex.codecogs.com/gif.latex?P%28s%20%7C%20O_t%20%29%3D%5Ctext%20%7B%20Probability%20of%20a%20sensor%20reading%20value%20when%20sleep%20onset%20is%20observed%20at%20a%20time%20bin%20%7D%20t)
27
Juli

Readme2Tex

私は、LaTeXをGithub風味のマークダウンにうまくタイプセットすることから、ほとんどの作業を自動化するスクリプトに取り組んでいます: https://github.com/leegao/readme2tex

Github用のLaTeXのレンダリングには、いくつかの課題があります。まず、Github風のマークダウンは、ほとんどのタグとほとんどの属性を取り除きます。これは、Javascriptベースのライブラリ(Mathjaxなど)やCSSスタイリングがないことを意味します。

自然な解決策は、プリコンパイルされた方程式の画像を埋め込むことです。ただし、LaTeXは単にドル記号で囲まれた数式を画像に変換するだけではないことにすぐ気付くでしょう。

enter image description here

オンラインコンパイラから画像を埋め込むだけで、ドキュメントの外観が非常に不自然になります。実際、私はあなたの日常のx ^ 2数学のスラングで、ジャンプよりもさらに読みやすいと主張します 

文書が自然で読みやすい方法で組版されていることを確認することが重要だと思います。これが、数式を画像にコンパイルするだけでなく、結果の画像がテキストの残りの部分に適切に適合し、整列することを保証するスクリプトを書いた理由です。

たとえば、以下は、.mdを使用した正規表現タイプセットの列挙プロパティに関するreadme2texファイルからの抜粋です。

enter image description here

ご想像のとおり、上部の方程式のセットは、対応するalign*環境を開始するだけで指定されます

**Theorem**: The translation $[\![e]\!]$ given by
\begin{align*}
...
\end{align*}
...

インライン方程式($ ... $)はテキストとともに実行されますが、表示方程式(\begin{ENV}...\end{ENV}または$$...$$で区切られた方程式)は中央に配置されることに注意してください。これにより、すでにLaTeXに慣れている人々が生産性を維持しやすくなります。

これが役立つと思われる場合は、必ずチェックしてください。 https://github.com/leegao/readme2tex

16
Lee

私の秘trickは、Jupyter Notebookを使用することです。

GitHubには、.ipynbファイルのレンダリングのサポートが組み込まれています。インラインで記述し、ノートブックにLaTeXコードを表示すると、GitHubがそれをレンダリングします。

サンプルのノートブックファイルは次のとおりです。 https://Gist.github.com/cyhsutw/d5983d166fb70ff651f027b2aa56ee4e

13
Yuchao Jiang

次のオンラインエディタを使用することもできます。 https://www.codecogs.com/latex/eqneditor.php すぐにSVGファイルを生成します。次のようなリンクをドキュメントに挿入できます:![](https://latex.codecogs.com/svg.latex?y%3Dx%5E2) 

10

.mdファイルでLaTeXをネイティブにサポートしているため、方程式を含むリポジトリをGitlabにアップロードします。

```math
SE = \frac{\sigma}{\sqrt{n}}
```

インラインラテックスの構文は$`\sqrt{2}`$です。

Gitlabは画像を表示する代わりにブラウザでJavaScriptを使用して方程式をレンダリングします。これにより、方程式の品質が向上します。

詳細 こちら

Githubが将来これを実装することを期待しましょう。

9
Evgenii

私は他の人によって提案されたいくつかのソリューションをテストします TeXifyagurodriguez によるコメントで作成および提案され、さらに Tom Hale -I彼の答えを開発し、これが非常に良い解決策である理由を教えてください:

  • TeXifyは Readme2TexLee answer )のラッピングです。 Readme2Texを使用するには、ローカルマシン(Python、ラテックスなど)に多くのソフトウェアをインストールする必要があります-ただし、TeXifyはgithubプラグインなので、ローカルに何もインストールする必要はありませんmachine-githubアカウントでプラグインを1つ押すだけでそのプラグインをオンラインインストールする必要があります ボタン 、TeXifyがtexを解析するための読み取り/書き込みアクセスを持つリポジトリを選択します数式と写真を生成します。
  • リポジトリで*.tex.mdファイルを作成または更新すると、TeXifyは変更を検出し、*.mdファイルを生成します。このファイルでは、リポジトリのtexディレクトリに保存された画像によってラテックスフォーミュラが交換されます。そのため、README.tex.mdファイルを作成すると、TeXifyはtex式ではなく写真を使用してREADME.mdを生成します。 したがって、tex式の解析とドキュメントの生成は、各コミットで自動的に行われます&Push:)
  • すべての数式はtexディレクトリ内の画像に変更され、README.mdファイルはその画像へのリンクを使用するため、TeXifyをアンインストールしても、すべての古いドキュメントは引き続き機能します:)。 texディレクトリと*.tex.mdファイルはリポジトリに残るため、元のラテックスの式と写真にアクセスできます(手動で作成した他のドキュメントの写真をtexディレクトリに安全に保存することもできます"-TeXifyはそれらに触れません)。
  • README.tex.mdファイルで方程式ラテックス構文を直接使用できます(.mdマークダウン構文を失うことなく)。これは非常に便利です彼の答えではJulii 外部サービスへの特別なリンク(式付き)の使用を提案http://latex.codecogs.com/gif.latex?s%3D%5Ctext%20%7B%20sensor%20reading%20%7Dただし、いくつかの欠点があります。リンクの数式は簡単に(簡単に)更新および更新できません。また、サードパーティのサービスに問題がある場合は、古いドキュメントが機能しなくなります... TeXifyでは、そのプラグインをアンインストールしても、古いドキュメントは常に機能します(ラテックス式から生成されたすべての写真はtexディレクトリのリポジトリにとどまっているため)。
  • Yuchao Jiang 彼の答えでは、 Jupyter Notebook を使用するように提案されていますが、これもすてきな欠点があります:README.mdファイルで直接式を使用することはできません。ラテックス(MathJax)数式を含むレポジトリ内の他のファイル* .ipynbにリンクします。ファイルの* .ipynb形式はJSONであり、維持するのが便利ではありません(たとえば、適切な場所にコンマを入れるのを忘れた場合、*。ipynbファイルの行番号でGistは詳細なエラーを表示しません)。

ここにリンクがあります ドキュメントが README.tex.md ファイルから生成されたTeXifyを使用しているレポの一部へ。

6

PushからGitHubへの自動変換については、 TeXify appをご覧ください。

プッシュで拡張子が* .tex.mdのファイルを探し、TeX式をSVG画像としてレンダリングするGitHubアプリ

仕組み( ソースリポジトリ から):

プッシュするたびに、TeXifyが実行され、最後のコミットで* .tex.mdファイルを検索します。それらのそれぞれについて、ドル記号で囲まれたLaTeX式を取得するreadme2texを実行し、プレーンSVG画像に変換してから、出力を.md拡張ファイルに保存します(つまり、README.tex.mdという名前のファイル処理され、出力はREADME.mdとして保存されます)。その後、出力ファイルと新しいSVGイメージがコミットされ、リポジトリにプッシュバックされます。

4
Tom Hale