Class: Nanoc::Filters::Pandoc Private

Inherits:
Nanoc::Filter
  • Object
show all
Defined in:
lib/nanoc/filters/pandoc.rb

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Instance Method Summary collapse

Instance Method Details

#run(content, params = {}) ⇒ String

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Runs the content through Pandoc using PandocRuby.

Arguments can be passed to PandocRuby in two ways:

  • Use the :args option. This approach is more flexible, since it allows passing an array instead of a hash.

  • Pass the arguments directly to the filter. With this approach, only hashes can be passed, which is more limiting than the :args approach.

The :args approach is recommended.

Examples:

Passing arguments using :arg


filter :pandoc, args: [:s, {:f => :markdown, :to => :html}, 'wrap=none', :toc]

Passing arguments not using :arg


filter :pandoc, :f => :markdown, :to => :html

Parameters:

  • content (String)

    The content to filter

Returns:

  • (String)

    The filtered content



34
35
36
37
38
# File 'lib/nanoc/filters/pandoc.rb', line 34

def run(content, params = {})
  args = params.key?(:args) ? params[:args] : params

  PandocRuby.convert(content, *args)
end