我正在尝试使用降价写博客,并决定安装 redcarpet gem。一切看起来都很好,pygments.rb 在语法高亮方面做得很好,但问题是,每当我尝试使用代码块放置代码块时,```
我都会将所有行(第一行除外)缩进 6 个额外的空格。如何摆脱它?
application_helper.rb
module ApplicationHelper
class HTMLwithPygments < Redcarpet::Render::HTML
def block_code(code, language)
Pygments.highlight(code, lexer: language)
end
end
def markdown(content)
renderer = HTMLwithPygments.new(hard_wrap: true, filter_html: true)
options = {
autolink: true,
no_intra_emphasis: true,
disable_indented_code_blocks: true,
fenced_code_blocks: true,
lax_html_blocks: true,
strikethrough: true,
superscript: true
}
Redcarpet::Markdown.new(renderer, options).render(content).html_safe
end
end
发布视图 - show.html.haml
.container
.show.title
= @post.title
.show.header
= @post.header
.show.created_at
= @post.created_at
.show.content
= markdown @post.content
这就是代码在 sublime 中的样子:
这是使用复制粘贴相同的代码来发布内容时呈现的帖子的样子:
我正在使用带有 2 个空格缩进的 SublimeText3,视图采用 html.haml 格式。
这是帖子内容的确切输入:
```ruby
module ApplicationHelper
class HTMLwithPygments < Redcarpet::Render::HTML
def block_code(code, language)
Pygments.highlight(code, lexer: language)
end
end
def markdown(content)
renderer = HTMLwithPygments.new(hard_wrap: true, filter_html: true)
options = {
autolink: true,
no_intra_emphasis: true,
disable_indented_code_blocks: true,
fenced_code_blocks: true,
lax_html_blocks: true,
strikethrough: true,
superscript: true
}
Redcarpet::Markdown.new(renderer, options).render(content).html_safe
end
end