2011-12-24 2 views
2

:redcarpet 필터를 사용하여 Nanoc 3에서 컨텐츠를 필터링하려고합니다. 내 코드는 다음 (에서 규칙 파일)과 같습니다Redcarpet Nanoc 필터에 확장 기능을 전달하는 방법

compile '/posts/*/' do 
    filter :redcarpet 
    layout 'default' 
end 

가 나는 문법을 강조 할 수 있도록 redcarpet 확장에 옵션 :fenced_code_blocks을 전달하려는. 나는 이것을하는 방법의 예를 찾을 수 없다. https://github.com/tanoku/redcarpet은 redcarpet을 사용할 때이를 수행하는 방법을 설명합니다. Nanoc의 문서는 옵션을 전달할 수 있다고 제안하지만 http://nanoc.stoneship.org/docs/api/3.2/Nanoc3/Filters/Redcarpet.html하지만 아무것도 시도하지 않았습니다.

다음은 작동하지 않는 몇 가지이다 :

filter :redcarpet, :fenced_code_blocks => true 
filter :redcarpet, :options => [:fenced_code_blocks] 
filter :redcarpet, { :options => [:fenced_code_blocks] } 
filter :redcarpet, { :options => { :fenced_code_blocks => true } } 
filter :redcarpet, { :options => [{ :fenced_code_blocks => true }] } 
filter :redcarpet, { :fenced_code_blocks => true } 

이 많은 적절한 루비처럼 보이지 않고, 그냥 어둠 속에서 찌르는 것. 규칙 파일에서 DSL 마법의 종류가 실제로 어떤 것인지 알지 못합니다. 어떤 도움을 주셔서 감사합니다.

답변

1

Redcarpet 1.x를 사용하면 :options => [ :foo, :bar, :baz ]을 사용하여 옵션을 전달할 수 있지만 Redcarpet 2.x 만 울타리 코드 블록을 지원하고 nanoc은 Redcarpet 2.x를 지원하지 않는 것으로 보입니다.

Redcarpet 2 루비 여기 세그 폴트가 발생하기 때문에 불행하게도, Redcarpet 2와 nanoc 통합을 테스트 할 수 없습니다 ...

데니스

관련 문제