2014-01-22 5 views
11

Я прочитал про Gulp и был полностью воспринят философией. Я хочу попробовать это для себя, но у меня проблема. Я привык использовать Jekyll с Grunt, и я понятия не имею, как заставить Джекила играть с Gulp.Использование Jekyll с Gulp

Я столкнулся с статьей this, в которой говорится, что при использовании Gulp нет необходимости в плагине Jekyll. К сожалению, на самом деле это не объясняет, как это сделать, и example ссылки на него не очень помогают.

Есть ли кто-нибудь, кто знает, как это сделать?

+2

для уточнения, что значит «играть хорошо»? gulp-jekypll позволит вам строить. вы ищете модуль глотков, который позволит вам запускать сервер? – chantastic

+0

@chantastic Я ищу способ иметь Jekyll в качестве моего статического генератора сайтов, следить за изменениями исходных файлов и перекомпилировать их и выводить их на локальный сервер. Мне придется посмотреть на плагин gulp-jekyll, но из вашего комментария это звучит так, будто он просто заботится о части здания. – Thijs

+0

Насколько я знаю, инструментарий еще не существует для глотки. Если бы я отправил вам ответ с решением Rake или Grunt, это было бы уместно? – chantastic

ответ

32

Читать этот блог: Why you shouldn’t create a gulp plugin

Затем понять, что вы можете легко вызвать Джекил ванильным Node.js. Нет необходимости в плагине.

require('child_process').spawn('jekyll', ['build'], {stdio: 'inherit'}); 
+1

Вот документы о 'child_process'' spawn', если они помогут кому-то понять этот ответ (мне это помогло): http://nodejs.org/api/child_process.html#child_process_child_process_spawn_command_args_options – davidtheclark

1

Если вы хотите увидеть, что глотка плагин Джекил может выглядеть, проверить gulp-jekyll. Прокомментируйте, если вы считаете, что этот проект более или менее полезен, чем сам процесс создания.

0

Опоздание к партии, я хотел бы спросить:
Почему вы хотите объединить Jekyll с Gulp?

У Jekyll уже есть некоторые встроенные задачи, например, SCSS для CSS. И сам Jekyll также может быть дополнен плагинами для таких вещей, как minifying и prefixing. Итак: вам может не понадобиться комбинировать две разные технологии здесь.

Возможно, одна из причин может быть опубликована на страницах GitHub (дополнительные плагины не поддерживаются). Таким образом, чтобы конвейерная обработка активов и построенная Jekyll должны были стать двумя разделенными шагами. В моем случае я уже использовал auto-prefixer, и я не хотел возвращаться к использованию mixins.

Хотя исследования и испытания этого, я нашел различные методы для Jekyll + Глоток документооборота:

  1. Spawn Джекила как дочерний процесс, наиболее популярной, как описано Sindre, here
  2. Эксплуатация Jekyll подача и подача в параллель, нет необходимости интегрировать ее в другую, вы также можете использовать их рядом друг с другом для разработки
  3. Вызовите Jekyll из Gulp через команду оболочки, .pipe(run('bundle exec jekyll build');Source.

Большинство людей используют браузеры, чтобы обслуживать сайт локально, а не встроенный метод jekyll serve.