markdown2Mathjax este un pachet simplu care vă permite să utilizați stilul de latex matematica generate de MathJax în colaborare cu formatul popular reduceri. & Nbsp; Există două implementări de reduceri în python, acest pachet este proiectat pentru a fi utilizat cu utilizate pe scară mai largă și menținut în mod activ a două, numit markdown2. Utilizarea tipică este următoarea:
#! / Usr / bin / env python
de la sanitizeInput import markdown2Mathjax, reconstructMath
de la reduceri import markdown2
tmp = sanitizeInput (sometxt)
markdedDownText = reduceri (tmp [0])
finalOutput = reconstructMath (markedDownText, tmp [1])
(În cazul în care "sometxt" este un șir care conține reduceri + mathjax textul.)
Instalare
markdown2Mathjax este găzduit pe pypi, astfel încât poate fi instalat fie din surse, utilizând:
tar zxvf markdown2Mathjax-x.x.x.tar.gz
cd markdown2Mathjax-x.x.x
python setup.py instalare
sau folosind PIP (sau easy_install dacă preferați):
Pip instala markdown2Mathjax
Utilizare
În mod implicit, matematica este marcat de $ semne unice pentru matematică inline și semne duble $$ pentru ecuații. Cu toate acestea, orice siruri de delimitare pot fi utilizate prin schimbarea argumentele cuvinte cheie pentru funcțiile sanitizeInput și reconstructMath. Rețineți că, în mod implicit mathjax NU folosiți dolari unice semne pentru a delimita matematica linie, deci dacă utilizați setările implicite pentru acest pachet, va trebui să instrui mathjax pentru a trata în mod corespunzător.
Explicație
Funcția sanitizeInput constată orice cazuri de matematica (determinat de delimitatorii furnizate) și le înlocuiește cu un înlocuitor. Acest înlocuitor pot fi specificate de utilizator, dar este recomandat să folosiți implicit furnizat de "zero dolari $". Substituent trebuie să fie ceva care nu vor fi prelucrate de reduceri, și nu va fi vreodată produsă de reduceri. Primul dintre aceste cerințe este destul de ușor pentru a satisface, a doua poate fi ceva mai subtil. În cazul în care substituentul există deja în textul de utilizare furnizat, se remarcă prin sanitizeInput și va fi lăsat în pace atunci când reconstrucție matematica după prelucrare reduceri.
De fiecare dată când un bloc matematica valabil este întâlnită și înlocuit cu un substituent, matematica este salvat într-o listă (numite codeblocks), care este apoi returnat de funcția sanitizeInput. Fiecare intrare în codeblocks este prefixat fie cu 0 (pentru o occurance literal de substituent în text), un 1 pentru matematica inline sau un 2 pentru o ecuație separat.
Șirul dezinfectate de sanitizeInput poate fi marcat prin reduceri fără teama de a fi mutilat matematica. În cele din urmă, reconstructMath înlocuiește fiecare dintre substituenții din text marcat cu codeblock adecvat. Acest html final poate fi apoi afișate cu mathjax adecvat javascript antete.
Un alt mod de a gândi despre acest lucru este decât reconstructMath este, în principiu inversul sanitizeInput. Deci, fără utilizarea reduceri între, nimic nu ar trebui să se schimbe între cei doi (cu excepția cazului în reconstructMath are, de asemenea, unele de curățare suplimentar de a codeblocks matematica). Aceasta este:
tmp = sanitizeInput (test)
reconstructMath (tmp [0], tmp [1]) == încercare
ar trebui să evalueze întotdeauna la adevărata p>
Cerințe :.
- Python
Comentariile nu a fost găsit