Python 使用指定的css标记为html

Python 使用指定的css标记为html,python,css,vim,markdown,Python,Css,Vim,Markdown,首先,让我说——我喜欢降价。我真的很喜欢它。它简单、优雅、性感,是我在标记语言中想要的一切。如果可以,我会向它提议:) 到目前为止,我一直在以一种非常好和简单的方式使用它,Vim+=我选择的浏览器中的快速预览 但是,它有一个缺点。。。css表单是在插件的某个地方硬编码的,我无法更改它。注意:我知道zero python,或者一些非常接近它的东西 是否有一个标记为各种格式的插件,允许您指定要使用的css页面,这样我就可以拥有多个版本,并使用我当时希望的版本创建同一文档的多个版本? 会有点像 mar

首先,让我说——我喜欢降价。我真的很喜欢它。它简单、优雅、性感,是我在标记语言中想要的一切。如果可以,我会向它提议:)

到目前为止,我一直在以一种非常好和简单的方式使用它,Vim+=我选择的浏览器中的快速预览

但是,它有一个缺点。。。css表单是在插件的某个地方硬编码的,我无法更改它。注意:我知道zero python,或者一些非常接近它的东西

是否有一个标记为各种格式的插件,允许您指定要使用的css页面,这样我就可以拥有多个版本,并使用我当时希望的版本创建同一文档的多个版本?

会有点像

markdown  my-document-in.markdown  css-sheet.css  cool-looking-document.html
使用(特别是)我编写了一个小脚本,当被称为
generator.py input.markdown styles.css pretty.html
(假设将其保存为generator.py)时,它使用python-markdown2库将标记转换为html,将css文件嵌入顶部并将其写入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()`
导入标记2
导入操作系统,系统
输出=”“
"""
cssin=open(sys.argv[2])
输出+=cssin.read()
输出+=“”“
"""
mkin=open(sys.argv[1])
输出+=markdown2.markdown(mkin.read())
输出+=“”“
"""
outfile=open(sys.argv[3])
outfile.write(输出)
outfile.close()`

将链接文件从github和上面的代码一起复制到一个文件夹中,它应该可以正常运行。我已经在本地测试过了,它很有效。希望它也能对你有所帮助。

+1感谢你喜欢markdown。我也是。@HPDeveloper-不,说真的,这是一件非常漂亮的事情。简单又实用。“如果它有数学支持(方程式),我可能会向它提出建议。”乔纳斯——现在看看它;我在文档中没有看到任何关于输入所选css表的内容。你能提供一两个提示吗?@applicative-为什么要删除答案?我查看了pandoc,事实上,这是一个很棒的项目。我将把它作为一个评论而不是回答,因为你可能会因为我的建议而讨厌我!跨平台编辑器“升华文本2”通过一个名为“降价预览”的插件具有此功能。CSS位于插件文件夹中,易于编辑。有趣的是,ST2是用Python编写的。请注意,由于字符串在Python中是不可变的,所以从性能角度来看,使用
+=
是一件可怕的事情。既然你要打开outfile,最好把每一部分分开写。