Есть ли способ рендеринга LaTex в README.md в репозитории GitHub? Я искал его и искал в переполнении стека, но ни один из связанных ответов не представляется возможным.
Латексная рендеринг в README.md на Github
Ответ 1
Для коротких выражений и не очень красивой математики вы можете использовать встроенный HTML-код, чтобы вывести свою латексную математику на кодекоги, а затем встроить полученное изображение. Вот пример:
- <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 следующим образом:



Ответ 2
Readme2Tex
Я работал над script, который автоматизирует большую часть беспорядка из-за того, что вы легко набираете LaTeX-набор в уценку Github: https://github.com/leegao/readme2tex
Есть несколько проблем с рендерингом LaTeX для Github. Во-первых, уценка Github - это самые разные теги и большинство атрибутов. Это не означает, что библиотеки, основанные на Javascript (например, Mathjax), ни CSS-стиль.
Естественное решение, по-видимому, заключается в том, чтобы вставлять изображения предварительно скомпилированных уравнений. Тем не менее, вы скоро поймете, что LaTeX делает больше, чем просто превращает формулы, заключенные в доллары, в изображения.
Простое вложение изображений из онлайн-компиляторов дает этот неестественный взгляд на ваш документ. На самом деле, я бы сказал, что он еще более читабельен в вашем повседневном математическом сленге x ^ 2, чем прыгать .
Я считаю, что важно, чтобы ваши документы набирались естественным и понятным способом. Вот почему я написал script, который, помимо компиляции формул в изображениях, также гарантирует, что результирующее изображение будет правильно установлено и выровнено с остальной частью текста.
Например, вот выдержка из файла .md
относительно некоторых перечисляемых свойств набора регулярных выражений с помощью readme2tex
:
Как и следовало ожидать, набор уравнений вверху задается путем запуска соответствующей среды align*
**Theorem**: The translation $[\![e]\!]$ given by
\begin{align*}
...
\end{align*}
...
Обратите внимание, что в то время как встроенные уравнения ($... $) работают с текстом, отображаемые уравнения (те, которые ограничены символом \begin{ENV}...\end{ENV}
или $$...$$
), центрированы. Это облегчает людям, которые уже привыкли к LaTeX, чтобы быть продуктивными.
Если это звучит как нечто, что может помочь, обязательно проверьте его. https://github.com/leegao/readme2tex
Ответ 3
Моя хитрость заключается в использовании ноутбука Jupyter.
GitHub имеет встроенную поддержку для рендеринга файлов .ipynb. Вы можете написать inline и отобразить код LaTeX в блокноте, и GitHub предоставит его вам.
Вот пример файла тетради: https://gist.github.com/cyhsutw/d5983d166fb70ff651f027b2aa56ee4e
Ответ 4
Можно также использовать этот онлайн-редактор: https://www.codecogs.com/latex/eqneditor.php, который генерирует файлы SVG
на лету. Вы можете поместить ссылку в свой документ следующим образом 
что приведет к: .
Ответ 5
Я загружаю репозитории с уравнениями в Gitlab, потому что он имеет встроенную поддержку LaTeX в файлах .md:
'''math
SE = \frac{\sigma}{\sqrt{n}}
'''
Синтаксис для встроенного латекса: $'\sqrt{2}'$
.
Gitlab отображает уравнения с помощью JavaScript в браузере вместо отображения изображений, что улучшает качество уравнений.
Больше информации здесь.
Давайте надеяться, что Github осуществит это и в будущем.
Ответ 6
Для автоматического преобразования при загрузке в GitHub, взгляните на приложение TeXify:
Приложение GitHub, которое ищет в ваших файлах файлы с расширением *.tex.md и отображает их выражения TeX как изображения SVG.
Как это работает (из исходного репозитория):
Всякий раз, когда вы нажимаете, TeXify будет запускаться и искать файлы *.tex.md в вашем последнем коммите. Для каждого из них он запустит readme2tex, который примет выражения LaTeX, заключенные в знаки доллара, преобразует его в простые изображения SVG, а затем сохранит выходные данные в файл расширения .md (это означает, что файл с именем README.tex.md будет обработан и вывод будет сохранен как README.md). После этого выходной файл и новые изображения SVG затем фиксируются и возвращаются в репозиторий.
Ответ 7
Я тестирую какое-то решение, предложенное другими, и я бы хотел порекомендовать TeXify, созданную и предложенную в комментарии agurodriguez и далее описанную Томом Хейлом, - я хотел бы развить его ответ и объяснить, почему это очень хорошее решение:
- TeXify - это оболочка Readme2Tex (упомяните в ответе Ли). Чтобы использовать Readme2Tex, вы должны установить большое количество программного обеспечения на свой локальный компьютер (python, latex,...), но TeXify - это плагин github, поэтому вам не нужно ничего устанавливать на локальный компьютер - вам нужна только онлайн-установка, которая подключите свою учетную запись github, нажав одну кнопку, и выберите репозитории, для которых TeXify будет иметь доступ на чтение/запись для анализа ваших текстовых формул и создания изображений.
- Когда в вашем хранилище вы создаете или обновляете файл
*.tex.md
, TeXify обнаружит изменения и сгенерирует файл*.md
котором будут заменены латексные формулы его изображениями, сохраненными в каталогеtex
в вашем репо. Поэтому, если вы создадите файл README.tex.md, TeXify сгенерирует README.md с изображениями вместо текстовых формул. Таким образом, синтаксический анализ формул tex и создание документации выполняется автоматически при каждом коммите и нажатии :) - Поскольку все ваши формулы превращаются в рисунки в каталоге
tex
а в файле README.md используются ссылки на эти рисунки, вы даже можете удалить TeXify, и вся ваша старая документация все равно будет работать :). Каталогtex
и файлы*.tex.md
останутся в хранилище, поэтому у вас есть доступ к исходным формулам и рисункам из латекса (вы также можете безопасно хранить в каталогеtex
ваши другие изображения документации, "сделанные вручную" - TeXify их не трогает), - Вы можете использовать синтаксис латексных уравнений непосредственно в файле README.tex.md (без потери синтаксиса уценки .md), что очень удобно. Юлий в своем ответе предложил использовать специальные ссылки (с формулами) на внешний сервис, например.
http://latex.codecogs.com/gif.latex?s%3D%5Ctext%20%7B%20sensor%20reading%20%7D
что хорошо, однако, имеет некоторые недостатки: формулы в ссылках не легко (удобно) читать и обновлять, и если возникнет какая-то проблема с этим сторонним сервисом, ваша старая документация перестанет работать... В TeXify ваша старая документация будет работать всегда, даже если вы удалите этот плагин (потому что все ваши изображения, созданные из латексных формул, остаться в репо вtex
каталоге). - Yuchao Jiang в своем ответе предложил использовать Jupyter Notebook, что также неплохо, но имеет некоторые недостатки: вы не можете использовать формулы непосредственно в файле README.md, вам нужно сделать ссылку на другой файл *.ipynb в вашем репо, который содержит латекс (MathJax) формулы. Формат файла *.ipynb - JSON, который не очень удобен в обслуживании (например, Gist не показывает подробную ошибку с номером строки в файле *.ipynb, когда вы забыли поставить запятую в нужном месте...).
Вот ссылка на некоторые из моих репо, где я использую TeXify, для которого документация была сгенерирована из файла README.tex.md.
Ответ 8
Вы можете использовать удивительный плагин для Chrome - https://chrome.google.com/webstore/detail/mathjax-plugin-for-github/ioemnmodlmafdkllaclgeombjnmnbima