2012-02-16 11 views
9

Po pierwsze, pozwól mi powiedzieć - kocham przecenę. Naprawdę to uwielbiam. To proste, eleganckie, seksowne, wszystko, czego pragnę w języku znaczników. Gdybym mógł, zaproponowałbym to :)obniżka do html za pomocą określonego css

Do tej pory używałem go w bardzo miły i prosty sposób, Vim + python-markdown = szybki podgląd w mojej przeglądarce z wyboru.

Ale ma jedną wadę ... Arkusz css jest zakodowany gdzieś wewnątrz wtyczki i nie mogę go zmienić. Uwaga: Znam zero pythona lub coś bardzo zbliżonego do niego.

Czy istnieje Przecena do -Różne wtyczki formats- który pozwala określić stronę css do użycia, tak, że mogę mieć kilka i stworzyć kilka wersji tego samego dokumentu przy użyciu jednego pragnę w tym czasie?

To pójdzie coś

markdown my-document-in.markdown css-sheet.css cool-looking-document.html 
+1

+1 za kochającą przecenę. Ja też. – mauris

+0

@thephpdeveloper - Nie, naprawdę, to naprawdę piękna rzecz. Proste, ale tak przydatne. Gdyby miał wsparcie matematyczne (dla równań), prawdopodobnie bym to zaproponował. – Rook

+0

@ldigas Wprowadź kramdown. – Jonas

Odpowiedz

6

Korzystanie https://github.com/trentm/python-markdown2/ (konkretnie https://raw.github.com/trentm/python-markdown2/master/lib/markdown2.py), napisałem mały skrypt, który po nazwie jak generator.py input.markdown styles.css pretty.html (zakładając, że uratował go jako generator.py) używa biblioteki python-markdown2 aby przekonwertować przecenę na HTML, osadza plik css na górze i zapisuje go do pretty.html.

import markdown2 
import os, sys 


output = """<!DOCTYPE html> 
<html lang="en"> 

<head> 
    <meta charset="utf-8"> 
    <style type="text/css"> 
""" 

cssin = open(sys.argv[2]) 
output += cssin.read() 

output += """ 
    </style> 
</head> 

<body> 
""" 
mkin = open(sys.argv[1]) 
output += markdown2.markdown(mkin.read()) 

output += """</body> 

</html> 
""" 

outfile = open(sys.argv[3]) 
outfile.write(output) 
outfile.close()` 

Skopiuj połączony plik z github i powyższego kodu do folderu razem i powinien działać poprawnie. Przetestowałem to lokalnie i to działa. Mam nadzieję, że to może ci pomóc.

+3

Zauważ, że skoro łańcuchy są niezmienne w pythonie, użycie '+ =' jest okropnym zadaniem, pod względem wydajności. Ponieważ i tak otwierasz plik wyjściowy, lepiej po prostu napisz każdą sztukę osobno. –

Powiązane problemy