metalsmith-watch でビルドを自動化します。

インストール&設定

例によって npm でインストールします。

$ npm install metalsmith-watch --save
...
└─┬ metalsmith-watch@1.0.3
...
$

index.js は 次のようになります。


const watch = require('metalsmith-watch');

Metalsmith(__dirname)

  ...

  .use(watch({
    paths: {
      "${source}/**/*": true,
      "templates/**/*": true,
    },
  }))

  ...

オプションについての説明です。

...

実際に動かすとこんな感じです。make コマンドを実行すると、終了せずに待機しています。

$ make
node index.js
[metalsmith-watch] ✔︎ Watching src/**/*
[metalsmith-watch] ✔︎ Watching templates/**/*

ファイルの変更を検知すると、自動的にビルドされます。

[metalsmith-watch] ✔︎ src/posts/metalsmith-watch.md changed
[metalsmith-watch] - Updating 1 file...