Octopress 如何启用RDisont额外降价';生成toc';八月初

Octopress 如何启用RDisont额外降价';生成toc';八月初,octopress,tableofcontents,rdiscount,Octopress,Tableofcontents,Rdiscount,我试图通过配置_config.yml,使Octopress使用默认的标记解析器RDisont(2.1.7)生成TOC,但它不起作用,rake generate失败。 我尝试了答案,但对我也不起作用。 因此,我想知道是否有办法配置Octopress RDisont额外的标记语法,如下所示: markdown: rdiscount rdiscount: extensions: - autolink - footnotes - smart - generate_t

我试图通过配置_config.yml,使Octopress使用默认的标记解析器RDisont(2.1.7)生成TOC,但它不起作用,
rake generate
失败。
我尝试了答案,但对我也不起作用。
因此,我想知道是否有办法配置Octopress RDisont额外的标记语法,如下所示:

markdown: rdiscount
rdiscount: 
  extensions:
    - autolink
    - footnotes
    - smart
    - generate_toc
在_config.yml中设置rdisont并
rake generate
后,我得到一个构建错误,如下所示:

sunnogo@a3e420:~/github/octopress$ rake generate
## Generating Site with Jekyll                                                                                                        
identical source/stylesheets/screen.css                                                                                               
Configuration from /home/sunnogo/github/octopress/_config.yml                                                                         
Building site: source -> public                                                                                                       
Liquid Exception: can't convert nil into String in atom.xml                                                                           
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/converters/markdown.rb:139:in `include?'                                            
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/converters/markdown.rb:139:in `convert'                                             
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/filters.rb:25:in `markdownify'                                                      
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/context.rb:58:in `invoke'                                                            
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/variable.rb:43:in `block in render'                                                  
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/variable.rb:38:in `each'                                                             
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/variable.rb:38:in `inject'                                                           
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/variable.rb:38:in `render'                                                           
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:94:in `block in render_all'                                                 
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:92:in `collect'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:92:in `render_all'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/tags/for.rb:116:in `block (2 levels) in render'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/tags/for.rb:104:in `each'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/tags/for.rb:104:in `each_with_index'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/tags/for.rb:104:in `block in render'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/context.rb:91:in `stack'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/tags/for.rb:103:in `render'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:94:in `block in render_all'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:92:in `collect'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:92:in `render_all'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:82:in `render'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/template.rb:124:in `render'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/template.rb:132:in `render!'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/convertible.rb:79:in `do_layout'
/home/sunnogo/github/octopress/plugins/post_filters.rb:167:in `do_layout'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/page.rb:100:in `render'
/home/sunnogo/github/octopress/plugins/category_generator.rb:100:in `write_category_index'
/home/sunnogo/github/octopress/plugins/category_generator.rb:111:in `block in write_category_indexes'
/home/sunnogo/github/octopress/plugins/category_generator.rb:110:in `each'
/home/sunnogo/github/octopress/plugins/category_generator.rb:110:in `write_category_indexes'
/home/sunnogo/github/octopress/plugins/category_generator.rb:139:in `generate'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/site.rb:190:in `block in generate'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/site.rb:189:in `each'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/site.rb:189:in `generate'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/site.rb:40:in `process'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/bin/jekyll:264:in `<top (required)>'
/usr/local/bin/jekyll:23:in `load'
/usr/local/bin/jekyll:23:in `<main>'
Build Failed
sunnogo@a3e420:~/github/octopress$rake生成
##用Jekyll生成站点
相同的源/样式表/screen.css
来自/home/sunnogo/github/octopress/_config.yml的配置
建筑工地:来源->公共
液体异常:无法将nil转换为atom.xml中的字符串
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/converters/markdown.rb:139:in'include'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/converters/markdown.rb:139:in'convert'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/filters.rb:25:in'markdownify'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/context.rb:58:in“invoke”
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/variable.rb:43:在“渲染中的块”中
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/variable.rb:38:in'each'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/variable.rb:38:in'inject'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/variable.rb:38:in'render'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:94:in“渲染中的块”
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:92:in'collect'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:92:in'render_all'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/tags/for.rb:116:在“渲染中的块(2个级别)”中
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/tags/for.rb:104:in'each'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/tags/for.rb:104:“每个_都有索引”
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/tags/for.rb:104:“渲染中的块”中
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/context.rb:91:在“堆栈”中
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/tags/for.rb:103:在“渲染”中
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:94:in“渲染中的块”
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:92:in'collect'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:92:in'render_all'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/block.rb:82:in'render'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/template.rb:124:in'render'
/var/lib/gems/1.9.1/gems/liquid-2.3.0/lib/liquid/template.rb:132:in'render!'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/convertible.rb:79:in'do_layout'
/home/sunnogo/github/octopress/plugins/post_filters.rb:167:in'do_布局'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/page.rb:100:in'render'
/home/sunnogo/github/octopress/plugins/category_generator.rb:100:in'write_category_index'
/home/sunnogo/github/octopress/plugins/category_generator.rb:111:in'block in write_category_index'
/home/sunnogo/github/octopress/plugins/category_generator.rb:110:in'each'
/home/sunnogo/github/octopress/plugins/category_generator.rb:110:in'write_category_index'
/home/sunnogo/github/octopress/plugins/category_generator.rb:139:in'generate'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/site.rb:190:在“生成中的块”中
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/site.rb:189:in'each'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/site.rb:189:in'generate'
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/lib/jekyll/site.rb:40:在“进程”中
/var/lib/gems/1.9.1/gems/jekyll-0.12.0/bin/jekyll:264:in`'
/usr/local/bin/jekyll:23:在“加载”中
/usr/local/bin/jekyll:23:in`'
构建失败

您看到的问题是由于。具体地说,Jekyll假设如果您指定
generate_toc
,那么您还可以指定
toc_token
,这是您可以在文档中写入的字符串,以使Jekyll插入目录

更新的_config.yml如下所示:

markdown: rdiscount
rdiscount: 
  extensions:
    - autolink
    - footnotes
    - smart
    - generate_toc
  toc_token: "!TOC"

然后您将插入
!TOC
在您的降价文档中,位于您希望目录出现的位置。

我认为该配置块是正确的。也许您可以提供当
rake generate
失败时发生的错误的相关信息?@DavidFoster,谢谢您的回复。我在上面添加了错误信息。您是否进行了其他设置或修补程序以使配置正常工作?