我正在为OS X编写一个小的降价编辑器。到目前为止,我可以将降价转换为HTML并将其显示在我的Web视图中。我还没有管理的是让语法突出显示并运行。我使用kramdown
进行降价 - > HTML位及其文档表明可以使用 rouge 或 coderay 完成突出显示。我已经和 rouge 一起去了,但是没有取得多大成功。以下是我设置任务的方法:
func newTask() -> NSTask {
var task = NSTask()
task.launchPath = "/usr/bin/kramdown"
task.arguments = [
"--syntax-highlighter", "rouge",
"--syntax-highlighter-opts", "{line_numbers : true, disable : false, default_lang : python}"]
var inPipe = NSPipe()
var outPipe = NSPipe()
task.standardInput = inPipe
task.standardOutput = outPipe
return task
}
这是我的降价的一个例子:
~~~ ruby
def what?
42
end
~~~
当我运行任务时,我没有收到任何错误消息,我可以使用我传递给--syntax-highlighter-opts
的参数来切换行号,所以我认为参数的语法是正确的,但是否则显然不是 - 我可以提取html,但没有语法突出显示。