我看到一些 Octopress 网站的代码块中没有行号。你是怎样做的?{% codeblock %}
标签中有一些属性吗?还是我必须修改代码块插件源?
问问题
1571 次
4 回答
2
通过 4 个空格缩进使用块引号应该可以满足您的要求,但它不会突出显示语法。
如果您对到处丢失行号感到满意,您可以修改plugins/pygments_code.rb
并删除生成行号的代码。
于 2012-12-31T07:37:46.943 回答
1
如果您使用kramdown 标记引擎,它会附带您在_config.yml
文件中设置的选项coderay_line_numbers
:
markdown: kramdown
kramdown:
use_coderay: true
coderay:
coderay_line_numbers:
coderay_css: class
它可以设置为nil
(如本例所示)inline
、table
或list
。可能你看到的没有行号的博客就是用这种方法的。
您可以在我关于 Octopress 中的 kramdown的博文中看到不同选项的一些屏幕截图。
于 2013-02-10T13:42:42.680 回答
1
上面 bilalq 建议的补丁pygments_code.rb
(抱歉,太大,无法放入他的答案的评论中)
--- a/plugins/pygments_code.rb
+++ b/plugins/pygments_code.rb
@@ -29,11 +29,11 @@ module HighlightCode
end
highlighted_code
end
+
def tableize_code (str, lang = '')
- table = '<div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers">'
+ table = '<div class="highlight"><table><tr>'
code = ''
str.lines.each_with_index do |line,index|
- table += "<span class='line-number'>#{index+1}</span>\n"
code += "<span class='line'>#{line}</span>"
end
table += "</pre></td><td class='code'><pre><code class='#{lang}'>#{code}</code></pre></td></tr></table></div>"
于 2013-02-01T10:20:01.877 回答
1
只需添加:
pre.line-numbers { display: none; }
到sass/custom/_styles.scss
.
这是来自@bilalq 对其中一个答案的评论,但我认为这是最好、最简单和最理智的答案(理智就像你想保持你的自定义一样sass/custom/
)。
于 2014-06-25T02:13:51.270 回答