我想为 Middleman 添加 .jade 支持。我不需要使用翡翠的任何动态功能,但我想在中间人中编译我的应用程序,而不是使用我自己的凌乱编译脚本。
向 Middleman 添加新文件类型的最简单方法是什么?
Middleman 的模板是建立在Tilt上的,所以使用Tilt -jade gem 应该很简单。
下面是一些将 Mustache 模板添加到 Middleman 的代码:
require 'tilt-mustache'
# Mustache Renderer
module Middleman::Renderers::Mustache
class << self
def registered(app)
# Mustache is not included in the default gems,
# but we'll support it if available.
begin
# Require Gem
require "mustache"
# After config, setup mustache partial paths
app.after_configuration do
Mustache.template_path = source_dir
# Convert data object into a hash for mustache
provides_metadata %r{\.mustache$} do |path|
{ :locals => { :data => data.to_h } }
end
end
rescue LoadError
end
end
alias :included :registered
end
end
Middleman::Base.register Middleman::Renderers::Mustache
这应该很容易适应 Jade 的工作。