Подтвердить что ты не робот

Как сжимать и минимизировать активы с помощью jekyll-плагинов

У меня есть простое тестовое приложение jekyll, например:

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.

Как я могу это сделать?

4b9b3361

Ответ 1

Вот краткое изложение того, что я нашел, решая это в 2014 году:

Начнется с

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

Развитие продолжалось хорошо, пока он не был избит этим проектом:

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

... который до сих пор был моим фаворитом для реализации, за исключением того, что он не работает сейчас, и похоже, что разработка была остановлена, поэтому я был вынужден перейти на

3) https://github.com/ixti/jekyll-assets

... который снова бьет # 2, но это просто сложнее, чем использовать. Во всяком случае, это единственное, что работает, так что я сейчас использую.

Ответ 2

Существуют плагины для HTML и CSS minification с Jekyll, но поиск не вызывает ничего очевидного для JS.

Однако источник для CSS один выше составляет менее 100 строк и фактически использует Juicer, чтобы выполнить минимизацию, которая также может выполнять JS, так что плагин можно легко использовать в качестве шаблона для реализации собственного JS minifier (похоже, что даже просто s/css/js/g будет близко к работе).

Ответ 3

Я рекомендую Jekyll Asset Pipeline для этого. Он поддерживает любой язык (например, Scss, Less, CoffeeScript, Erb и т.д.) И имеет множество функций (например, теги данных, сжатие, gzipping и т.д.), Которые устанавливают его отдельно. В наши дни он также кажется самым быстрорастущим драгоценным камнем, связанным с Джекилом, который я подразумеваю, что он набирает силу в сообществе.

Ответ 4

Для JS и CSS вы можете использовать Jekyll Asset Bundler Он использует жуки-компиляторы yui-comp или comp-compiler.