我正在尝试为pyents设置一个修复语言。rb, Javascript。我要用红地毯做降价促销。到目前为止,我在这里:
# Model.rbbefore_save: render_source
def render_source
require 'redcarpet'
renderer = PygmentizeHTMLSOURCE
extensions = {fenced_code_blocks: true}
redcarpet = Redcarpet::Markdown.new(renderer, extensions)
self.rendered_source = redcarpet.render self.source
end
class PygmentizeHTMLSOURCE < Redcarpet::Render::HTML
def block_code(code, language)
Pygments.highlight(code, :lexer => 'javascript', options: {linenos: 'table'})
end
end
现在我正在传递:lexer => 'javascript'
,但无法摆脱该块的语言选项。如果我删除"语言",我得到wrong number of arguments (2 for 1)
这和红地毯有关吗?如何设置词法分析器默认为javascript ?
我的主要问题是,我希望初始:text
是用户的CLEAR输入。我不想存储
```javascript
```
。
找到了!!
我使用的是Redcarpet预定义的块级调用。(代码,语言).
我必须使用的是整个文档
的Pre/post进程回调 class PygmentizeHTMLSOURCE < Redcarpet::Render::HTML
def preprocess(full_document)
Pygments.highlight(full_document, :lexer => 'javascript', options: {linenos: 'table'})
end
end
对于进一步的定制,这里是pyelement格式化器的列表。