2014-10-09 22 views
22

ben yazı yazmak ve github-sayfalarda göstermek için jekyll kullanın. kaynak dosyam, markdown ile yazılmıştır.
nasıl markdown dosyasına işlevi ekleyebilirsiniz?
bir görüntü içine formülü kaydetmek istemiyorum. ve görüntüyü işaretleme dosyasına yükleyin. Aslında ben doğrudan işaretleme dosyasında lateks formülünü yazmak istiyorum.github-sayfalarda lateks desteklenen Nasıl

+1

çalıştı asla ama yapılabilir http görünüyor: //gastonsanchez.com/blog/opinion/2014/02/16/Mathjax-with-jekyll.html – DomDom

+1

Harika. işe yarıyor. – Samuel

cevap

22

Bu soruyla ilgili kaynaklar çevrimiçi olarak değiştiğinden, GitHub Sayfaları ile LateX'i destekleme hakkında bir güncelleme var.

Not yakın olduğunu MathJax kullanmak olacaktır görüntüler olarak ihracat ve doğal olarak sizin Jekyll sitesinde desteklemeden render Latexe.

MathJax aslında matematik destek içinin Jekyllrb docs tavsiye Kramdown ile, aynı zamanda Kramdown documentation

Seçenek 1 de şurada üzerine, PNG LaTeX den fazla ayrıntı dönüştürür edilir:MathURL daki denklemi yazın ve gömün.

Daha sonra kalıcı olarak denkleme giden bir URL oluşturmak, MathURL ile denklem yazma ve bir etiketinde bu görüntüleyebilir. Ancak, MathURL çevrimdışı duruma geçerse bu çalışmayı durduracaktır.

Seçenek 2: sözdizimi gibi neredeyse lateks sağlayacak jsMath

jsMath uygulanması ve doğru şekilde ayarladıysanız blogunuza desteklenecektir, extensive documentation on this yoktur.

Seçenek 3: (Bence en kolay olanı) Mathjax

Birçok site Mathjax jsMath bir halefi kabul edilir ve söylemiştik Jekyll ile uygulamak çok daha kolaydır. MathJax is also used by mathematics.stackexchange.com too!

  • Adım 1: Siteniz matematik görüntülemek istediğiniz sitelerde senaryoyu yük var. (Genellikle başlıkta yapılan)

  • İsteğe Bağlı: _config.yml daki markdown ayrıştırıcı kontrol edin. redcarpet veya kramdown bu örnekte önerilir. discount gibi belirli ayrıştırıcılar sözdizimini engeller ancak aşağıda bir çözümüm var.

  • Adım 2: Denklemlerinizi yazın.

    MathJax LaTeX tamamen aynı davranışı yok:

Gaston Sanchez bu öğretici aktaran. Varsayılan olarak, tex2jax önişlemcisi, satır içi matematik için \ (... \) olan ve görüntülenen denklemler için \ [... \] olan LaTeX matematik sınırlayıcılarını tanımlar. ayrıca TeX sınırlayıcılarını $$ olarak tanımlar ...Görüntülenen denklemler için $$, ancak , satır içi matematik sınırlayıcıları olarak $ ... $ tanımlamaz.

Daha fazla bilgi için sözdizimindeki documentation kodunu okuyun.

  • Not: Markdown ayrıştırıcılar MathJax sözdizimi karışmaz sağlamak için raw sıvı etiketini kullanma.
  • Ters eğik çizgiden (örn. \\[ \frac{1}{n^{2}} \\]) 'a doğru düzgün bir şekilde ayrıldığından emin olursanız, as described by Chistopher Poole's tutorial, bu her zaman sezgisel değildir ve karmaşık görünüyor. daha basit bir çözüm, metninin Markdown işlemcisi tarafından yok sayıldığından ve doğrudan bir statik html olarak alındığından emin olmak için ham sıvı etiketini kullanmak olacaktır. Bu {% raw %} ile yapılır ve ayrıca İşte {% endraw %}

bir kod örneği:

{% raw %} 
    $$a^2 + b^2 = c^2$$ --> note that all equations between these tags will not need escaping! 
{% endraw %} 

Son olarak da yazı tipi boyutu çok küçük olmak gibi sorunları var yazı bazı olarak lateks görüntüleyen destekleyen emin olun. Alternatif olarak burada Lateks StackExchange kardeş sitesinde tartışılan bazı additional methods like Google Charts and MathML vardır. Eğer GitHub sayfalarında Jekyll kullandıysanız

+0

MathJax benim için mükemmel çalıştı. Http://docs.mathjax.org/en/latest/start.html adresindeki sayfanın üzerinde iyi bir örnek var. – MxNx

+0

[burada] (http://gastonsanchez.com/opinion/2014/02/16/Mathjax-with-jekyll/), jekyll – glS

+0

ile mathjax kullanımı hakkında çok güzel bir blog yazısıdır. Mathjax script etiketini eklemek kadar basittir şimdi yazı düzeninde. Şu anda dokümanlarda oldukça açık: https://jekyllrb.com/docs/extras/#math-support –

3

, dosyadaki _includes/head.html yılında

<script type="text/x-mathjax-config"> 
MathJax.Hub.Config({ 
    tex2jax: { 
    skipTags: ['script', 'noscript', 'style', 'textarea', 'pre'], 
    inlineMath: [['$','$']] 
    } 
}); 

ekleyebilir ve ardından GitHub Sayfalar sitesi destekleyecektir MathJax