如何使用jekyll插件压缩和缩小资产

时间:2012-04-18 11:34:13

标签: jekyll minify

我有一个简单的测试jekyll app就像这样:

index.html是:

<script type="text/javascript" src="/assets/myfile.js"><script>
<p>hi</p>

和myfile.js文件如下:

var  x  = "this is a string";
alert(x +  "hi");

我只想添加一个插件,以便在将js文件写入_site / assets / myfile.js文件之前将其缩小

我怎么能想到这个?

6 个答案:

答案 0 :(得分:15)

以下是我在2014年解决这个问题时发现的内容摘要:

开始

  1. https://github.com/donaldducky/jekyll-cssminify

    开发进展顺利,直到被这个项目击败:

  2. http://www.matthodan.com/2012/11/22/jekyll-asset-pipeline.html

    ...到目前为止,我最喜欢实施,除了它现在不起作用,看起来开发已经停止,所以我被迫转向

  3. https://github.com/envygeeks/jekyll-assets

    ...再次击败#2,但使用起来比较棘手。无论如何,这是唯一有效的,所以我现在正在使用它。

答案 1 :(得分:5)

Jekyll有HTMLCSS缩小的插件,但搜索并没有为JS带来任何明显的变化。

然而,source for CSS one above小于100行并且实际上使用Juicer进行缩小,这也可以做JS,因此插件可以很容易地用作模板来实现自己的JS minifier(看起来即使只是s/css/js/g也会接近工作)。

答案 2 :(得分:4)

我建议使用Jekyll Asset Pipeline gem。它支持任何语言(例如Scss,Less,CoffeeScript,Erb等),并具有一系列功能(例如资产标记,压缩,gzipping等),将其区分开来。它似乎也是目前发展最快的杰基尔相关宝石,我认为这意味着它在社区中越来越受欢迎。

答案 3 :(得分:2)

对于JS和CSS,你可以使用Jekyll Asset Bundler它使用yui-compressor或closure-compiler gems。

答案 4 :(得分:0)

对于图像,我制作了一个插件插件,通过image_optim运行图像:

https://gist.github.com/sffc/a828267913591159ab1cc3e1bfde20d7

答案 5 :(得分:0)

与其他插件相比,此更新似乎相当合理,并使用yui-compressor和htmlcompressor最小化了HTML / XML / CSS / JS Minifier。
https://github.com/digitalsparky/jekyll-minifier