Genel Github'un Markdown'unda Matematik Denklemleri Nasıl Gösterilir (Github Blogunda Değil)


164

Araştırdıktan sonra, mathjax'ın bunu yapabileceğini buldum. Ancak markdown dosyama bir örnek yazdığımda, doğru denklemleri göstermiyor:

Bunu markdown dosyasının başına ekledim:

<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=default"></script>

Ve mathjax ifadesini yazın:

(E = mc ^ 2) , $$ x_ {1,2} = \ frac {-b \ pm \ sqrt {b ^ 2-4ac}} {2b} $$

Ancak github matematik sembolleri için hiçbir şey göstermez! Lütfen bana yardım edin, teşekkürler! Github markdown sayfalarında matematik sembollerini nasıl göstereceğimi söyle.


2
Genel kullanıcılar için sorunu çözmez, ancak bu cevap en azından denklemleri görmenize izin verebilecek bir tarayıcı komut dosyası önerir: stackoverflow.com/q/11255900/180892
Jeromy Anglim

gitlab KaTeX kullanıyor
Foad

Yanıtlar:


147

Ancak github matematik sembolleri için hiçbir şey göstermez! lütfen bana yardım et, teşekkürler!

GitHub markdown çözümlemesi SunDown (ex libUpSkirt) kitaplığı tarafından gerçekleştirilir .

Kütüphanenin sloganı, "Standartlara uygun, hızlı, güvenli indirim işleme kütüphanesi C" dir . Sorunuz göz önüne alındığında burada önemli olan kelime "güvenli" dir :).

Aslında, javascript'in yürütülmesine izin vermek, MarkDown standart metin-HTML sözleşmesinin biraz dışında olacaktır.

Dahası, bir HTML etiketine benzeyen her şey ya dışarı atılır ya da çıkarılır.

Genel github işaretlemesinde matematik sembollerini nasıl göstereceğimi söyle.

En iyi bahsiniz , sağlanan URL sorgu dizesini ayrıştırarak anında görüntüler oluşturabilen yuml.me'ye benzer bir web sitesi bulmaktır .

Güncelleme

Kullanıcılara böyle bir hizmet sunan bazı siteler buldum: codedogs.com ( artık yerleştirmeyi desteklemiyor gibi görünüyor ) veya iTex2Img . Onları denemek isteyebilirsiniz. Elbette başkaları da olabilir ve bazı Google-fu onları bulmanıza yardımcı olur.

aşağıdaki markdown sözdizimi verildiğinde

![equation](http://www.sciweavers.org/tex2img.php?eq=1%2Bsin%28mc%5E2%29&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=)

aşağıdaki resmi gösterecek

denklem http://www.sciweavers.org/tex2img.php?eq=1%2Bsin%28mc%5E2%29&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=

Not : Görüntünün düzgün bir şekilde görüntülenmesi için, url'nin sorgu dizesi kısmının yüzde olarak kodlandığından emin olmanız gerekir . Bu görevde size yardımcı olacak www.url-encode-decode.com gibi çevrimiçi araçları kolayca bulabilirsiniz.


6
@nultoken, yardımcı cevabınız için teşekkürler. Yukarıda atıfta bulunduğunuz iTex2Img web sitesini kullandım ve belgelerime iki formül ekledim. GitHub'da dokümantasyon sayfasını açtığımda, her iki formül de aslında farklıyken aynı şekilde gösteriliyor. Bunun neden olduğunu biliyor musunuz?
Sam

3
Görseli oluşturmanız gerekiyorsa , mathurl.com da dikkate değer bir web sitesidir.
Martin Thoma

2
Bu, github üzerinde çalışmıyor gibi görünüyor. Görüntü işlenmiyor. Nedenini bilen var mı?
OganM

1
@OganM Sözdizimi değişti. Bağlantı GitHub'da da düzeltildi ve test edildi
nulltoken

1
İTex2Img sitesi benim için sürekli olarak çalışmıyor gibi görünüyor. Görüntü Github'da işlenmiyor gibi görünüyor.
timbram

105

Markdown, satır içi HTML'yi destekler. Satır içi HTML, hem hızlı hem de basit satır içi denklemler için ve harici bir araçla daha karmaşık oluşturma için kullanılabilir.

Hızlı ve Basit Satır İçi

Hızlı ve basit satır içi öğeler için HTML ve işareti varlık kodlarını kullanın . Bu fikri markdown'da alt simge metinle birleştiren bir örnek şudur: h θ (x) = θ o x + θ 1 x, kodu aşağıdaki gibidir.

    h<sub>&theta;</sub>(x) = &theta;<sub>o</sub> x + &theta;<sub>1</sub>x

Yaygın matematik sembolleri için HTML ve işareti varlık kodları burada bulunabilir . Yunan harflerinin kodları burada .

Bu yaklaşımın sınırlamaları olsa da, hemen hemen tüm fiyat düşürmelerde çalışır ve herhangi bir harici kitaplık gerektirmez.

LaTeX ve Codecogs ile Kompleks Ölçeklendirilebilir Satır İçi Rendering

İhtiyaçlarınız daha fazlaysa, CodeCogs gibi harici bir LaTeX oluşturucu kullanın. CodeCogs düzenleyicisiyle bir denklem oluşturun . Oluşturma için svg'yi ve yerleştirme kodu için HTML'yi seçin. Svg, yeniden boyutlandırmada iyi işliyor. HTML, LaTeX'in kaynağa baktığınızda kolayca okunmasını sağlar. Gömme kodunu sayfanın alt kısmından kopyalayın ve işaretlemenize yapıştırın.

<img src="https://latex.codecogs.com/svg.latex?\Large&space;x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}" title="\Large x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}" />

Markdown'da ifade edilen

![\Large x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}](https://latex.codecogs.com/svg.latex?\Large&space;x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}) 

\ Büyük x = \ frac {-b \ pm \ sqrt {b ^ 2-4ac}} {2a}

Bu, bu yanıtı ve bu yanıtı birleştirir .

GitHub desteği yalnızca bazı zamanlar benim için okunabilir LaTeX için yukarıdaki ham html sözdizimini kullanarak çalıştı. Yukarıdakiler sizin için işe yaramazsa başka bir seçenek de URL Kodlanmış işlemeyi seçmek ve bu çıktıyı manuel olarak bir bağlantı oluşturmak için kullanmaktır:

\ Büyük x = \ frac {-b \ pm \ sqrt {b ^ 2-4ac}} {2a}

![\Large x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}](https://latex.codecogs.com/svg.latex?x%3D%5Cfrac%7B-b%5Cpm%5Csqrt%7Bb%5E2-4ac%7D%7D%7B2a%7D)

Bu, LaTex'i alternatif görüntü metnine manuel olarak dahil eder ve GitHub'da oluşturmak için kodlanmış bir URL kullanır.

Çok Satırlı Oluşturma

Çok satırlı görüntülemeye ihtiyacınız varsa, bu yanıtı kontrol edin .


1
bu harika çalıştı. Bir jupyter not defterini (.ipynb) dönüştürmem gerekiyordu .mdve denklemler aslında çok satırlı lateks koduydu .
Marc Maxmeister

Evet, jupyter not defterinde de çalışır ve doğrudan ilişkili olmasa da , handcalcs Python hesaplama kodunu Latekspip install handcalcs
SpeedCoder5

14

Tarayıcıda matematik göstermek istiyorsanız , MathJax ile GitHub Chrome uzantısını deneyebilirsiniz . Oldukça uygun.


1
yüklemeyi denediğimde icon16.png ile ilgili bir hata oluşuyor
Homero Esmeraldo

@HomeroEsmeraldo MathJax uzantısını manuel olarak kurabilirsiniz. 1. Depoyu klonlayın: github.com/orsharir/github-mathjax.git 2. Chrome uzantılarında Geliştirici modunu etkinleştirin. 3. 'github-mathjax.crx' dosyasını krom uzantılarına sürükleyin.
risabhRizz

12

Diğer bir geçici çözüm, jupyter not defterlerini kullanmak ve denklemleri oluşturmak için hücrelerde işaretleme modunu kullanmaktır.

Merkezlenmiş denklemler gibi temel şeyler mükemmel çalışıyor gibi görünüyor

\begin{equation}
...
\end{equation}

veya satır içi denklemler

$ \sum_{\forall i}{x_i^{2}} $

Gerçi, gerçekten istediğim işlevlerden biri github'da hiç işlenmemişti \mbox{}, bu bir serseri oldu. Ancak, sonuç olarak bu, github'da denklem oluşturmanın en başarılı yolu olmuştur.


3
Bu cevap için teşekkür ederim, ama bir sorun var: Jupyter not defterini işaretleme modunda kullanmayı başardım ve denklem tamam görünüyor. Ancak, şimdi bu jupyter işaretlemesini GitHub'a aktarmak için nasıl yapabilirsiniz readme.md?
DavidC.

1
Denklemler doğrudan Markdown dosyalarında işlenmez. Denklemlerin hemen hemen üzerinde görüntü olması gerekirdi readme.md. Ancak, her zaman sadece file.ipynbgithub'a koyabilirsiniz ve github onu iyi işler.
hexicle

12

Şimdi 2020, kaynak kodu deposu ana bilgisayarlarının matematiksel formül oluşturma desteğinin ilerlemesini özetleyeyim.

GitHub ve Bitbucket

GitHub ve Bitbucket , varsayılan sınırlayıcılar veya diğerleri olsun, matematiksel formüllerin oluşturulmasını hala desteklemiyor .

Bitbucket Cloud / BCLOUD-11192 - MarkDown Belgelerine (BB-12552) LaTeX Desteği Ekle

GitHub / işaretleme - Matematik denklemlerini işleme

GitHub / işaretleme - Lateksi destekler

GitHub Topluluk Forumu - [ÖZELLİK TALEBİ] Markdown'da LaTeX Math

talk.commonmark.org - İndirime matematik formülü eklenebilir mi

GitHub, son yıllarda neredeyse hiç önemli bir ilerleme kaydetmedi.

GitLab

GitLab zaten destekleniyor, ancak en yaygın yol bu değil. Kendi sınırlayıcısını kullanır.

This math is inline $`a^2+b^2=c^2`$.

This is on a separate line

```math
a^2+b^2=c^2
```

GitLab Aromalı Markdown - Matematik

Evrensel sınırlayıcıları kim destekliyor?

Hugo tarafından kullanılan bir Markdown ayrıştırıcısı

Oluşturmanın diğer yolları


Ben sadece hack'lerden hoşlanırım, lütfen daha fazla hack yap.
Timo

6

GitHub, MathJax formüllerini yorumlamasa da, formüllerin görüntülerle değiştirildiği yeni bir Markdown belgesini otomatik olarak oluşturabilirsiniz.

GitHub uygulaması TeXify'a bakmanızı öneririm :

Gönderilerinizde * .tex.md uzantılı dosyalara bakan ve TeX ifadelerini SVG görüntüleri olarak işleyen GitHub Uygulaması

Nasıl çalışır ( kaynak depodan ):

TeXify'a her bastığınızda, son kaydetmenizde * .tex.md dosyalarını çalıştıracak ve arayacaktır. Bunların her biri için, dolar işaretleri arasına alınmış LaTeX ifadelerini alacak, bunu düz SVG görüntülerine dönüştürecek ve ardından çıktıyı bir .md uzantı dosyasına kaydedecek olan benioku2tex'i çalıştıracaktır (Bu, README.tex.md adlı bir dosya anlamına gelir. işlenecek ve çıktı README.md olarak kaydedilecektir). Bundan sonra, çıktı dosyası ve yeni SVG görüntüleri işlenir ve deponuza geri gönderilir.


2

Sorununuz için iyi bir çözüm var - TeXify github eklentisini kullanın ( Tom Hale'in cevabında bahsedilmiştir - ancak cevabını aşağıda verilen bağlantıda geliştirdim) - bu github eklentisi hakkında daha fazla ayrıntı ve bunun neden bu cevapta bulabileceğiniz iyi bir yaklaşım olduğunu açıklayın .


2

Denklemleri indirime dönüştürmek için aşağıda belirtilen işlemi kullanıyorum. Bu benim için çok iyi çalışıyor. Çok basit!!

Diyelim ki, matris çarpım denklemini temsil etmek istiyorum

Aşama 1:

Formülleriniz için komut dosyasını buradan alın - https://csrgxtu.github.io/2015/03/20/Writing-Mathematic-Fomulars-in-Markdown/

Örneğim:Z(i,j)=X(i,k) * Y(k, j); k=1 to n Bir özet formülü olarak temsil etmek istedim . Web sitesine referansla, gerekli komut dosyası =>

görüntü açıklamasını buraya girin

Z_i_j=\sum_{k=1}^{10} X_i_k * Y_k_j

Adım 2:

Komut dosyasını geçerli bir url'ye dönüştürmek için URL kodlayıcı - https://www.urlencoder.org/ kullanın Örneğim

:

görüntü açıklamasını buraya girin

Aşama 3:

"Eq" istek parametresindeki 2. Adımdaki çıktıyı kopyalayıp yapıştırarak görüntüyü oluşturmak için bu web sitesini kullanın - http://www.sciweavers.org/tex2img.php?eq=<b><i>paste-output-here</i></b>&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=

- Örneğim:
http://www.sciweavers.org/tex2img.php?eq=Z_i_j=\sum_{k = 1} ^ {10}% 20X_i_k% 20 *% 20Y_k_j & bc = Beyaz & fc = Siyah & im = jpg & fs = 12 & ff = arev & düzenle =

görüntü açıklamasını buraya girin

4. Adım:

Markdown sözdizimini kullanan referans resim - ![alt text](enter url here)

- Bunu markdown'a kopyalayın ve gitmekte fayda var:

![Z(i,j)=X(i,k) * Y(k, j); k=1 to n](http://www.sciweavers.org/tex2img.php?eq=Z_i_j%3D%5Csum_%7Bi%3D1%7D%5E%7B10%7D%20X_i_k%20%2A%20Y_k_j&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=)

Aşağıdaki resim, indirimin çıktısıdır. Yaşasın !!


görüntü açıklamasını buraya girin


bunu okuyan herkes, "Typora" benim yeni favori markdown uygulamam .. sadece şunu söylüyor:
Dexter

Typora denklemleri Github README.md'de doğru şekilde bulunabiliyorsa?
Jaden

0

Tex → görüntü dönüştürme ile ilgili olarak, LaTeXiT aracı çok daha yüksek kalitede çıktı üretir. Çoğu TeX dağıtımında standart olduğuna inanıyorum, ancak henüz sahip değilseniz kesinlikle çevrimiçi olarak bulabilirsiniz. Tek yapmanız gereken, onu TeX'e koymak, resmi masaüstünüze sürüklemek, ardından masaüstünüzden bir resim barındırma sitesine sürüklemek (imgur kullanıyorum).


LaTeXiT'nin yalnızca MacOS altında çalıştığı unutulmamalıdır (web sitesinde açıkça belirtilmese de).
ƒacu.

0

Aşağıdakileri işaretleme dosyasının başlığında kullandım

<script type="text/javascript" async
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js? 
config=TeX-MML-AM_CHTML"
</script>

Ardından aşağıdaki mathjax ifadesini
$$ x_ {1,2} = \ frac {-b \ pm \ sqrt {b ^ 2-4ac}} {2b} yazdım. $$
Benim için çalıştı


Bu, <script> etiketini filtrelediği için GitHub için çalışmaz. : /
Lawnmower Man
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.