[Middleman 3] grunt watch で middleman build する

CSS や JavaScript などのコンパイルをまるごと Middleman におまかせして楽したい。

% middleman version
Middleman 3.3.6

引き続き検討しています。

サーバは vagrant の方が何かと都合が良いです。
ということで middleman build コマンドが grunt から実行できれば良さそうです。

grunt-middleman

grunt-middleman で実現できそうです。

インストール

% npm install --save-dev grunt-middleman

Gruntfile.coffee

設定はこんな形。拡張子で指定しても良さそうです。

Gruntfile.coffee
    #
    # watch tasks
    #
    # grunt-middleman
    middleman:
      options:
        useBundle: true
      build:
        options:
          command: "build"
    # grunt-contrib-watch
    watch:
      middlemanBuild:
        files: ['<%= dir.src %>/**/*.{scss,js,erb}']
        tasks: ['middleman']

あっさりできました。ありがたい。

補遺