12

我读到 Gulp 并被其哲学所吸引。我想自己尝试一下,但我遇到了一个小问题。我习惯于将 Jekyll 与 Grunt 一起使用,但我不知道如何让 Jekyll 与 Gulp 配合得很好。

我遇到过这篇文章,它表明在使用 Gulp 时不需要 Jekyll 插件。不幸的是,它并没有真正解释如何去做和例子对我没有多大帮助。

有谁知道该怎么做?

4

4 回答 4

32

阅读这篇博文:为什么不应该创建 gulp 插件

然后意识到你可以很容易地在 vanilla Node.js 中触发 Jekyll。不需要插件。

require('child_process').spawn('jekyll', ['build'], {stdio: 'inherit'});
于 2014-01-28T11:07:01.120 回答
2

迟到了,我想问一下:
你为什么要把 Jekyll 和 Gulp 结合起来?

Jekyll 已经有一些内置任务,例如将 SCSS 编译为 CSS。Jekyll 本身也可以通过插件进行扩展,例如缩小和前缀。所以:您可能根本不需要在这里结合两种不同的技术。

一个原因可能是,您想发布到 GitHub 页面(不支持额外的插件)。因此,资产流水线和 Jekyll 构建必须成为两个独立的步骤。在我的情况下,我已经在使用auto-prefixer并且我不想回去使用mixins它。

在研究和测试这一点时,我发现了 Jekyll+Gulp 工作流的不同方法:

  1. 生成 Jekyll 作为一个子进程,最流行的,如 Sindre 所述, here
  2. Jekyll serve 和 Gulp 并行运行,不需要相互集成,也可以并行运行开发
  3. 通过 shell 命令 Source 从 Gulp调用.pipe(run('bundle exec jekyll build'); Jekyll

大多数人都使用 Browsersync 在本地为站点提供服务,而不是内置jekyll serve方法。

于 2017-09-08T10:18:22.237 回答
1

如果您想了解 Jekyll gulp 插件的外观,请查看gulp-jekyll。如果您认为这个项目比自己生成流程更有用或更不有用,请发表评论。

于 2014-05-11T04:09:25.713 回答
0

我刚刚尝试了这个 YO 生成器,效果很好: https ://www.npmjs.org/package/generator-jekyllized

Gulp+Jekyll+SASS

于 2014-09-26T23:01:43.590 回答