Existe-t-il un moyen de rendre LaTex dans README.md dans un référentiel GitHub? Je l'ai googlé et recherché sur le débordement de pile, mais aucune des réponses associées ne semble possible.
Existe-t-il un moyen de rendre LaTex dans README.md dans un référentiel GitHub? Je l'ai googlé et recherché sur le débordement de pile, mais aucune des réponses associées ne semble possible.
Réponses:
Pour les expressions courtes et les mathématiques pas si sophistiquées, vous pouvez utiliser le HTML en ligne pour obtenir votre rendu mathématique latex sur les codecogs, puis incorporer l'image résultante. Voici un exemple:
- <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 " />
Ce qui devrait aboutir à quelque chose comme le suivant
Mise à jour: Cela fonctionne très bien dans eclipse mais pas dans github malheureusement. La seule solution est la suivante:
Prenez votre équation de latex et allez sur http://www.codecogs.com/latex/eqneditor.php , au bas de la zone où votre équation apparaît, il y a un petit menu déroulant, choisissez l'URL encodée puis collez-la dans votre markdown github de la manière suivante:
![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)
Je télécharge des référentiels avec des équations sur Gitlab car il prend en charge nativement LaTeX dans les fichiers .md:
```math
SE = \frac{\sigma}{\sqrt{n}}
```
La syntaxe du latex en ligne est $`\sqrt{2}`$
.
Gitlab rend les équations avec JavaScript dans le navigateur au lieu d'afficher des images, ce qui améliore la qualité des équations.
Plus d'infos ici .
Espérons que Github l'implémentera également à l'avenir.
Mon truc est d'utiliser le Jupyter Notebook.
GitHub a un support intégré pour le rendu des fichiers .ipynb. Vous pouvez écrire en ligne et afficher du code LaTeX dans le notebook et GitHub le restituera pour vous.
Voici un exemple de fichier de cahier: https://gist.github.com/cyhsutw/d5983d166fb70ff651f027b2aa56ee4e
J'ai travaillé sur un script qui automatise la plupart des crampes pour obtenir une composition LaTeX bien dans le markdown à la saveur de Github: https://github.com/leegao/readme2tex
Il y a quelques défis avec le rendu LaTeX pour Github. Tout d'abord, le démarquage à la saveur de Github supprime la plupart des balises et la plupart des attributs. Cela signifie pas de bibliothèques basées sur Javascript (comme Mathjax) ni de style CSS.
La solution naturelle semble alors être d'intégrer des images d'équations précompilées. Cependant, vous vous rendrez vite compte que LaTeX fait plus que simplement transformer des formules jointes en signe dollar en images.
Le simple fait d'incorporer des images de compilateurs en ligne donne ce look vraiment artificiel à votre document. En fait, je dirais que c'est encore plus lisible dans votre argot mathématique quotidien x ^ 2 que nerveux .
Je crois qu'il est important de s'assurer que vos documents sont composés de manière naturelle et lisible. C'est pourquoi j'ai écrit un script qui, au-delà de la compilation de formules en images, garantit également que l'image résultante est correctement ajustée et alignée sur le reste du texte.
Par exemple, voici un extrait d'un .md
fichier concernant certaines propriétés énumératives d'expressions régulières composées en utilisant readme2tex
:
Comme vous pouvez vous y attendre, l'ensemble d'équations en haut est spécifié en démarrant simplement l' align*
environnement correspondant
**Theorem**: The translation $[\![e]\!]$ given by
\begin{align*}
...
\end{align*}
...
Notez que lorsque les équations en ligne ($ ... $) s'exécutent avec le texte, les équations (celles qui sont délimitées par \begin{ENV}...\end{ENV}
ou$$...$$
) sont centrées. Cela permet aux personnes déjà habituées à LaTeX de rester productives.
Si cela ressemble à quelque chose qui pourrait vous aider, assurez-vous de le vérifier. https://github.com/leegao/readme2tex
On peut également utiliser cet éditeur en ligne: https://www.codecogs.com/latex/eqneditor.php qui génère des SVG
fichiers à la volée. Vous pouvez mettre un lien dans votre document comme celui - ci:
![](https://latex.codecogs.com/svg.latex?y%3Dx%5E2)
qui se traduit par:
.
Je teste une solution proposée par d'autres et je voudrais recommander TeXify créé et proposé en commentaire par agurodriguez et décrit plus en détail par Tom Hale - je voudrais développer sa réponse et expliquer pourquoi c'est une très bonne solution:
*.tex.md
fichier, TeXify détectera les changements et générera un *.md
fichier où les formules latex seront échangées par ses images enregistrées dans le tex
répertoire de votre référentiel. Donc, si vous créez un fichier README.tex.md, TeXify générera README.md avec des images à la place des formules tex. Ainsi, l'analyse des formules tex et la génération de la documentation se font automatiquement à chaque commit et push :)tex
répertoire et que le fichier README.md utilise des liens vers ces images, vous pouvez même désinstaller TeXify et toute votre ancienne documentation fonctionnera toujours :). Le tex
répertoire et les *.tex.md
fichiers resteront sur le référentiel afin que vous ayez accès à vos formules et images latex originales (vous pouvez également stocker en toute sécurité dans le tex
répertoire vos autres images de documentation "faites à la main" - TeXify ne les touchera pas).http://latex.codecogs.com/gif.latex?s%3D%5Ctext%20%7B%20sensor%20reading%20%7D
ce qui est bien a cependant quelques inconvénients: les formules dans les liens ne sont pas faciles (pratiques) à lire et à mettre à jour, et s'il y a un problème avec ce service tiers, votre ancienne documentation cessera de fonctionner ... Dans TeXify votre ancienne documentation fonctionnera toujours même si vous désinstallez ce plugin (car toutes vos images générées à partir de formules latex restent dans le repo dans le tex
répertoire).Voici un lien vers une partie de mon dépôt où j'utilise TeXify pour lequel la documentation a été générée à partir du fichier README.tex.md .
Pour une conversion automatique lors du transfert vers GitHub, jetez un œil à l' application TeXify :
L'application GitHub qui recherche dans vos push les fichiers avec l'extension * .tex.md et rend ses expressions TeX sous forme d'images SVG
Comment ça marche (depuis le référentiel source ):
Chaque fois que vous poussez, TeXify s'exécute et recherche les fichiers * .tex.md dans votre dernier commit. Pour chacun de ceux-ci, il exécutera readme2tex qui prendra des expressions LaTeX entre les signes dollar, le convertira en images SVG simples, puis enregistrera la sortie dans un fichier d'extension .md (cela signifie qu'un fichier nommé README.tex.md sera traité et la sortie sera enregistrée sous README.md). Après cela, le fichier de sortie et les nouvelles images SVG sont ensuite validés et renvoyés dans votre dépôt.
$...$
dans le texte. Des indices pourquoi? Voici le repo: github.com/brunoconteleite/Spatial-Model-Solver
Ma solution rapide est la suivante:
étape 1. Ajoutez du latex à votre .md
fichier
$$x=\sqrt{2}$$
Remarque: les eqns mathématiques doivent être en $$ ... $$ ou \\(... \\)
.
étape 2. Ajoutez ce qui suit à votre scripts.html
fichier de thème ou (ajoutez ce code à la fin)
<script type="text/javascript" async
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-MML-AM_CHTML">
Terminé!. Voir votre eq. en chargeant la page.
scripts.html
fichier? Je ne trouve aucune référence à cela en tant que fonctionnalité github.
Jeykyll
thème ( fichier de thème)? Ce code sert à afficher le latex dans les pages git.
Vous pouvez obtenir un service d'intégration continue (par exemple Travis CI ) pour rendre LaTeX et valider les résultats sur github. CI déploiera un worker "cloud" après chaque nouvelle validation. Le worker compile votre document en pdf et soit utilise ImageMagick pour le convertir en image, soit utilise PanDoc pour tenter une conversion LaTeX-> HTML où le succès peut varier en fonction de votre document. Worker valide ensuite l'image ou le code HTML dans votre référentiel à partir duquel il peut être affiché dans votre readme.
Un exemple de configuration TravisCi qui construit un PDF, le convertit en PNG et le valide dans un emplacement statique de votre dépôt est collé ci-dessous. Vous devrez ajouter une ligne qui récupère pdfconverts PDF en image
sudo: required
dist: trusty
os: linux
language: generic
services: docker
env:
global:
- GIT_NAME: Travis CI
- GIT_EMAIL: builds@travis-ci.org
- TRAVIS_REPO_SLUG: your-github-username/your-repo
- GIT_BRANCH: master
# I recommend storing your GitHub Access token as a secret key in a Travis CI environment variable, for example $GH_TOKEN.
- secure: ${GH_TOKEN}
script:
- wget https://raw.githubusercontent.com/blang/latex-docker/master/latexdockercmd.sh
- chmod +x latexdockercmd.sh
- "./latexdockercmd.sh latexmk -cd -f -interaction=batchmode -pdf yourdocument.tex -outdir=$TRAVIS_BUILD_DIR/"
- cd $TRAVIS_BUILD_DIR
- convert -density 300 -quality 90 yourdocument.pdf yourdocument.png
- git checkout --orphan $TRAVIS_BRANCH-pdf
- git rm -rf .
- git add -f yourdoc*.png
- git -c user.name='travis' -c user.email='travis' commit -m "updated PDF"
# note we are again using GitHub access key stored in the CI environment variable
- git push -q -f https://your-github-username:$GH_TOKEN@github.com/$TRAVIS_REPO_SLUG $TRAVIS_BRANCH-pdf
notifications:
email: false
Cette configuration Travis Ci lance un worker Ubuntu télécharge une image docker en latex, compile votre document en pdf et le valide dans une branche appelée branchanme-pdf.
Pour plus d'exemples, consultez ce dépôt github et sa discussion sx qui l'accompagne , l' exemple PanDoc , https://dfm.io/posts/travis-latex/ , et cet article sur Medium .
Vous pouvez utiliser des démarques, par exemple
![equ](https://latex.codecogs.com/gif.latex?log(y)=\beta_0&space;+&space;\beta_1&space;x&space;+&space;u)
Le code peut être saisi ici: https://www.codecogs.com/latex/eqneditor.php .
Si vous rencontrez des problèmes avec https://www.codecogs.com/latex/eqneditor.php , j'ai trouvé que https://alexanderrodin.com/github-latex-markdown/ fonctionnait pour moi. Il génère le code Markdown dont vous avez besoin, il vous suffit donc de le couper et de le coller dans votre document README.md.