2012-02-16 9 views
9

का उपयोग कर एचटीएमएल में मार्कडाउन सबसे पहले, मुझे कहना है - मुझे मार्कडाउन पसंद है। वास्तव में इसे प्यार करो। यह आसान है, यह सुरुचिपूर्ण है, यह सेक्सी है, यह सब कुछ है जो मैं मार्कअप भाषा में चाहता हूं। अगर मैं कर सकता था, तो मैं इसका प्रस्ताव दूंगा :)निर्दिष्ट सीएसएस

अब तक मैं इसे बहुत ही अच्छे और सरल तरीके से उपयोग कर रहा हूं, विम + python-markdown = मेरे पसंद के ब्राउज़र में तेज़ पूर्वावलोकन।

लेकिन, इसमें एक कमी है ... सीएसएस शीट प्लगइन के अंदर कहीं भी हार्डकोड किया गया है, और मैं इसे बदल नहीं सकता। नोट: मुझे शून्य पायथन, या इसके बहुत करीब कुछ पता है।

वहाँ -विभिन्न formats- प्लगइन करने के लिए एक markdown ताकि मैं कई है और एक मैं उस समय इच्छा का उपयोग कर एक ही दस्तावेज़ के कई संस्करण बना सकते हैं आप का उपयोग करने के लिए एक सीएसएस पेज निर्दिष्ट करें, देता है कि है?

यह

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

+1 प्यार चिह्न के लिए +1। मैं भी। – mauris

+0

@thephpdeveloper - नहीं, गंभीरता से, यह वास्तव में एक सुंदर चीज़ है। सरल अभी तक बहुत उपयोगी है। अगर इसमें गणित का समर्थन था (समीकरणों के लिए) तो शायद मैं इसका प्रस्ताव दूंगा। – Rook

+0

@ldigas क्रैकडाउन दर्ज करें। – Jonas

उत्तर

6

का उपयोग https://github.com/trentm/python-markdown2/ (विशेष रूप से https://raw.github.com/trentm/python-markdown2/master/lib/markdown2.py), मैं एक छोटे से स्क्रिप्ट जो जब generator.py input.markdown styles.css pretty.html के रूप में बुलाया लिखा था की तरह कुछ (यह मानते हुए आप generator.py के रूप में यह बचाया) जाना होगा अजगर-markdown2 लाइब्रेरी का उपयोग करता मार्कडाउन को HTML में कनवर्ट करने के लिए, शीर्ष पर सीएसएस फ़ाइल एम्बेड करता है और इसे 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()` 

लिंक की गई फ़ाइल को जिथब और ऊपर दिए गए कोड को एक फ़ोल्डर में कॉपी करें और इसे ठीक चलाना चाहिए। मैंने इसे स्थानीय रूप से परीक्षण किया है और यह काम करता है। उम्मीद है कि यह भी आपकी मदद कर सकता है।

+3

ध्यान दें कि चूंकि अजगर पाइथन में अपरिवर्तनीय हैं, इसलिए '+ =' का उपयोग करना, प्रदर्शन के अनुसार एक भयानक चीज है। चूंकि आप किसी भी तरह से आउटफाइल खोल रहे हैं, बेहतर है कि प्रत्येक टुकड़ा अलग से लिखें। –

संबंधित मुद्दे