具有正则表达式的Nanoc编译规则

时间:2014-01-03 01:18:24

标签: regex compilation rules nanoc

我的文件名文件以controls-开头,例如controls-dark.png,但此规则无法捕获它们:

compile '/gallery/*/', :rep => :thumbnail do
  filter :thumbnailize, :width => 200 unless /controls-/.match(item[:filename])
end

为什么这不匹配?

所以最后我将controls-dark.png转换为缩略图,尽管它应该被此规则排除。

1 个答案:

答案 0 :(得分:0)

实际上它工作正常,问题在于路由,所以它没有将我的controls-dark.png转换为缩略图,只是将其文件名更改为conrols-dark-thumbnail.png

我在路线中使用相同的检查,所以:

route '/gallery/*/', :rep => :thumbnail do
unless /controls-/.match(item[:filename])
    item.identifier.chop + '-thumbnail.' + item[:extension]
else
    item.identifier.chop + '.' + item[:extension]
end

现在,文件名中包含controls-的文件只会被复制,而不会附加-thumbnail后缀。