我正在使用宝石“redcarpet”。我有一个降价文件。我希望能够使用一些ruby变量来渲染它。像这样的东西:
# my_file.md
###Something
fdafdsfdsfds
---
<% for n in my_numbers do %>
<%= n %>
<% end %>
做这样的事情的正确方法是什么?如何传递和呈现ruby变量?
您可以使用ruby中包含的erb
库,但您必须要求它:
require 'erb'
require 'redcarpet'
input = File.read "./file.md"
markdown = Redcarpet::Markdown.new(Redcarpet::Render::HTML, autolink: true, tables: true)
output = markdown.render ERB.new(input).result(binding)
File.open("output.html", "w") { |f| f.write output }
您可以通过引用redcarpet readme来自定义降价渲染器