markdown2Mathjax

Software screenshot:
markdown2Mathjax
Dettagli del software:
Versione: 0.3.8
Data di caricamento: 14 Apr 15
Sviluppatore: Matthew Young
Licenza: Libero
Popolarità: 6

Rating: nan/5 (Total Votes: 0)

markdown2Mathjax è un pacchetto semplice che consente di utilizzare la matematica stile lattice generato da MathJax in collaborazione con il formato Markdown popolare. & Nbsp; Ci sono due implementazioni di Markdown in python, questo pacchetto è stato progettato per essere utilizzato con il più largamente usato e attivamente mantenuto dei due, chiamato markdown2. Utilizzo tipico è il seguente:
#! / Usr / bin / env python
da markdown2Mathjax sanitizeInput import, reconstructMath
da markdown2 markdown import
tmp = sanitizeInput (sometxt)
markdedDownText = Markdown (tmp [0])
finalOutput = reconstructMath (markedDownText, tmp [1])
(Dove "sometxt" è una stringa contenente il mark-down + MathJax testo.)
Installazione
markdown2Mathjax è ospitato su pypi, quindi può essere installato sia dalla fonte, utilizzare:
tar zxvf markdown2Mathjax-x.x.x.tar.gz
cd markdown2Mathjax-x.x.x
python setup.py install
o utilizzando pip (o easy_install se preferisci):
pip installare markdown2Mathjax
Utilizzo
Per impostazione predefinita, la matematica è caratterizzata da segni di $ singoli per la matematica in linea e un doppio segno di $$ per equazioni. Tuttavia, tutte le stringhe di delimitazione possono essere utilizzati cambiando gli argomenti delle parole chiave alle funzioni sanitizeInput e reconstructMath. Si noti che per impostazione predefinita MathJax non utilizza dollari singoli segni per delimitare la matematica in linea, quindi se si utilizza le impostazioni predefinite per questo pacchetto, si dovrà indicare MathJax per trattare in modo appropriato.
Spiegazione
La funzione sanitizeInput trova tutte le istanze della matematica (come determinato dai delimitatori in dotazione) e li sostituisce con un segnaposto. Questo segnaposto può essere specificato dall'utente, ma si consiglia di utilizzare l'impostazione predefinita fornita di "$ 0 $". Il segnaposto deve essere qualcosa che non saranno trattati da Markdown, e non potrà mai essere prodotti da Markdown. Il primo di questi requisiti è abbastanza facile incontrare, il secondo può essere un po 'più sottile. Se il segnaposto è già presente nel testo fornito dall'utente, viene notato da sanitizeInput e verrà lasciato solo quando la ricostruzione matematica dopo l'elaborazione Markdown.
Ogni volta che un blocco matematico valido viene rilevato e sostituito da un segnaposto, la matematica viene salvato in un elenco (chiamato codeblocks) che viene poi restituito dalla funzione sanitizeInput. Ogni voce in codeblocks ha il prefisso o 0 (per un avvenimento letterale del segnaposto nel testo), un 1 per la matematica in linea o un 2 per un'equazione separato.
La stringa igienizzati da sanitizeInput può essere segnata da markdown senza paura di la matematica essere alterati. Infine, reconstructMath sostituisce ciascuno dei segnaposto nel testo contrassegnato con l'codeblock appropriata. Questo html finale può essere visualizzato con MathJax appropriate javascript intestazioni.
Un altro modo di pensare a questo è che reconstructMath è fondamentalmente l'inverso di sanitizeInput. Così, senza usare Markdown in mezzo, nulla dovrebbe cambiare tra i due (tranne quando reconstructMath fa anche un po di pulizia in più dei codeblocks matematica). Questo è:
tmp = sanitizeInput (test)
reconstructMath (tmp [0], tmp [1]) == Test
dovrebbe sempre valutare a true

Requisiti :.

  • Python

Programmi simili

manspider
manspider

20 Feb 15

oXygen XML Author
oXygen XML Author

17 Jul 15

queXML
queXML

20 Feb 15

uni2ascii
uni2ascii

11 May 15

Commenti a markdown2Mathjax

I commenti non trovato
Aggiungi commento
Accendere le immagini!