Existe alguma maneira de renderizar o LaTex em README.md em um repositório GitHub? Eu pesquisei no Google e procurei no estouro de pilha, mas nenhuma das respostas relacionadas parece viável.
Existe alguma maneira de renderizar o LaTex em README.md em um repositório GitHub? Eu pesquisei no Google e procurei no estouro de pilha, mas nenhuma das respostas relacionadas parece viável.
Respostas:
Para expressões curtas e matemática não tão sofisticada, você pode usar o HTML embutido para obter a matemática renderizada do látex nos codecogs e incorporar a imagem resultante. Aqui está um exemplo:
- <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 " />
O que deve resultar em algo como o próximo
Atualização: Isso funciona muito bem no eclipse, mas não no github, infelizmente. A única solução é a seguinte:
Pegue sua equação do látex e vá para http://www.codecogs.com/latex/eqneditor.php , na parte inferior da área em que sua equação aparece exibida, há um pequeno menu suspenso, escolha o URL codificado e cole-o no seu markdown do github da seguinte maneira:
![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)
Carrego repositórios com equações no Gitlab porque ele possui suporte nativo para o LaTeX em arquivos .md:
```math
SE = \frac{\sigma}{\sqrt{n}}
```
A sintaxe para o látex embutido é $`\sqrt{2}`$
.
O Gitlab renderiza equações com JavaScript no navegador em vez de mostrar imagens, o que melhora a qualidade das equações.
Mais informações aqui .
Espero que o Github também implemente isso no futuro.
Meu truque é usar o Notebook Jupyter.
O GitHub possui suporte embutido para renderização de arquivos .ipynb. Você pode escrever em linha e exibir o código LaTeX no notebook e o GitHub o renderizará para você.
Aqui está um exemplo de arquivo do notebook: https://gist.github.com/cyhsutw/d5983d166fb70ff651f027b2aa56ee4e
Eu tenho trabalhado em um script que automatiza a maior parte do problema de obter o LaTeX tipicamente para uma remarcação com sabor do Github: https://github.com/leegao/readme2tex
Existem alguns desafios com a renderização do LaTeX for Github. Primeiro, a remarcação com sabor do Github retira a maioria das tags e mais atributos. Isso significa que não há bibliotecas baseadas em Javascript (como Mathjax) nem estilo CSS.
A solução natural parece então incorporar imagens de equações pré-compiladas. No entanto, você logo perceberá que o LaTeX faz mais do que transformar fórmulas fechadas com cifrão em imagens.
Simplesmente incorporar imagens de compiladores on-line dá uma aparência realmente não natural ao seu documento. Na verdade, eu diria que é ainda mais legível na sua gíria matemática x ^ 2 todos os dias do que nervosa .
Acredito que é importante garantir que seus documentos sejam digitados de maneira natural e legível. Foi por isso que escrevi um script que, além de compilar fórmulas em imagens, também garante que a imagem resultante seja devidamente ajustada e alinhada ao restante do texto.
Por exemplo, aqui está um trecho de um .md
arquivo referente a algumas propriedades enumerativas das expressões regulares digitadas usando readme2tex
:
Como você pode esperar, o conjunto de equações na parte superior é especificado apenas iniciando o align*
ambiente correspondente
**Theorem**: The translation $[\![e]\!]$ given by
\begin{align*}
...
\end{align*}
...
Observe que, embora as equações em linha ($ ... $) sejam executadas com o texto, exiba as equações (aquelas delimitadas por \begin{ENV}...\end{ENV}
ou$$...$$
) são centralizadas. Isso facilita para as pessoas que já estão acostumadas ao LaTeX continuarem sendo produtivas.
Se isso parece algo que poderia ajudar, não deixe de conferir. https://github.com/leegao/readme2tex
Pode-se também usar este editor on-line: https://www.codecogs.com/latex/eqneditor.php, que gera SVG
arquivos em tempo real. Você pode colocar um link em seu documento como este:
![](https://latex.codecogs.com/svg.latex?y%3Dx%5E2)
o que resulta em:
.
Eu testei alguma solução proposta por outros e gostaria de recomendar o TeXify criado e proposto em comentário por agurodriguez e descrito mais detalhadamente por Tom Hale - gostaria de desenvolver sua resposta e de alguma razão para que essa seja uma solução muito boa:
*.tex.md
arquivo no seu repositório , o TeXify detecta alterações e gera *.md
arquivos onde as fórmulas de látex serão trocadas por suas imagens salvas no tex
diretório do seu repositório. Portanto, se você criar o arquivo README.tex.md, o TeXify gerará README.md com imagens, em vez de fórmulas tex. Portanto, analisar fórmulas tex e gerar documentação é feito automaticamente em cada commit e push :)tex
diretório e o arquivo README.md usa links para essas imagens, você pode desinstalar o TeXify e toda a sua documentação antiga ainda funciona :). O tex
diretório e os *.tex.md
arquivos permanecerão no repositório para que você tenha acesso às fórmulas e imagens originais de látex (você também pode armazenar com segurança no tex
diretório suas outras imagens da documentação "feitas à mão" - o TeXify não as tocará).http://latex.codecogs.com/gif.latex?s%3D%5Ctext%20%7B%20sensor%20reading%20%7D
o que é bom, porém tem algumas desvantagens: as fórmulas nos links não são fáceis (úteis) de ler e atualizar, e se houver algum problema com esse serviço de terceiros, sua documentação antiga parará de funcionar ... No TeXify, sua documentação antiga funcionará sempre mesmo se você desinstalar esse plug-in (porque todas as suas imagens geradas a partir de fórmulas de látex ficam no repositório no tex
diretório).Aqui está um link para alguns dos meus repositórios em que uso o TeXify para cuja documentação foi gerada a partir do arquivo README.tex.md .
Para conversão automática mediante envio ao GitHub, dê uma olhada no aplicativo TeXify :
Aplicativo GitHub que procura arquivos com extensão * .tex.md e renderiza suas expressões TeX como imagens SVG
Como funciona (do repositório de origem ):
Sempre que você pressionar o TeXify, será executado e pesquisado os arquivos * .tex.md no seu último commit. Para cada um deles, ele executa o readme2tex, que aceita expressões LaTeX entre cifrões, converte-as em imagens SVG simples e salva a saída em um arquivo de extensão .md (isso significa que um arquivo chamado README.tex.md será processado e a saída será salva como README.md). Depois disso, o arquivo de saída e as novas imagens SVG são confirmadas e enviadas de volta ao seu repositório.
$...$
no texto. Alguma pista porque? Este é o repositório
Minha solução rápida é esta:
etapa 1. Adicione látex ao seu .md
arquivo
$$x=\sqrt{2}$$
Nota: os eqns matemáticos devem estar em $$ ... $$ ou \\(... \\)
.
etapa 2. Adicione o seguinte ao seu scripts.html
arquivo ou tema (anexe este código no final)
<script type="text/javascript" async
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-MML-AM_CHTML">
Feito!. Veja sua eq. carregando a página.
scripts.html
arquivo? Não consigo encontrar nenhuma referência a isso como um recurso do github.
Jeykyll
tema ( arquivo de tema)? Este código é para exibir o látex nas páginas git.
Você pode obter um serviço de integração contínua (por exemplo, Travis CI ) para renderizar o LaTeX e confirmar os resultados no github. O IC implantará um trabalhador de "nuvem" após cada nova confirmação. O trabalhador compila seu documento em pdf e cita o ImageMagick para convertê-lo em uma imagem ou usa o PanDoc para tentar a conversão LaTeX-> HTML, onde o sucesso pode variar dependendo do seu documento. O Worker confirma uma imagem ou html no seu repositório, de onde pode ser mostrado no seu leia-me.
A configuração de exemplo do TravisCi que cria um PDF, o converte em PNG e o confirma em um local estático no seu repositório é colada abaixo. Você precisaria adicionar uma linha que busque o pdfconverte o PDF em uma imagem
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
Essa configuração do Travis Ci inicia que um trabalhador do Ubuntu faça o download de uma imagem de docker de látex, compile seu documento para pdf e o confirme em um ramo chamado branchanme-pdf.
Para obter mais exemplos, consulte este repositório do github e sua discussão sobre sx , exemplo do PanDoc , https://dfm.io/posts/travis-latex/ e esta publicação no Medium .
Você pode usar remarcações, por exemplo
![equ](https://latex.codecogs.com/gif.latex?log(y)=\beta_0&space;+&space;\beta_1&space;x&space;+&space;u)
O código pode ser digitado aqui: https://www.codecogs.com/latex/eqneditor.php .
Se você está tendo problemas com https://www.codecogs.com/latex/eqneditor.php , descobri que https://alexanderrodin.com/github-latex-markdown/ funcionava para mim. Ele gera o código Markdown que você precisa, então basta recortá-lo e colá-lo no seu documento README.md.