Boost」など、さまざまなカンファレンスを企画・運営しています。BOOKS(コードジン・ブックス)は、CodeZineの連載からカットアップした、開発現場の課題解決に役立つ書籍シリーズです。タスクのレシピgulp.jsのタスクは、gulpfile.jsというファイルに書きます。これを加えて、フォルダの全体像はこうなりました。gulpfile.jsを加えたフォルダの全体像gulpfile.jsの中身は、次のような素のJavaScriptです。Node.js初めてという場合、冒頭の記述が見慣れないかもしれません。require()は別ファイルやモジュールのJavaScriptを読み込む仕組みです。install済みのモジュールを、ここで読み込んで使えるわけです。.pipe(gulp.dest('dist/'));});gulpfile.jsの後半を詳しく見る前に、ひとまずターミナルから次のコマンドを実行してみましょう。style正しく実行されれば、dist/フォルダにstyle.min.cssというファイルができたはずです。続いて、gulpfile.jsの内容を見ていきましょう。<関数>)タスクの指定はこの関数を使います。タスク名はコマンドラインから指定するため、スペースを含めることができませんが、それ以外は比較的自由です。アルファベットに限らず、漢字で「整形と圧縮」とかでも構いません。<関数>)の形で書くこともでき、この場合は依存タスクを先に実行してから、タスクの本体が実行されます。「"deploy"は、必ず"coffee"と"css"してから」といった具合です(参照►公式ドキュメント)。gulp.src(<ファイル指定>)対象ファイルの指定には、glob文字列を使います。使うのは次のパターンなどで、これらの配列でもOKです。not-me.cssは除外なお、パスはプロジェクトフォルダのルート(root)からの相対パスで指定します(参照►公式ドキュメント)gulp.dest(<出力パス>)gulp.srcと同様に、相対パスで出力先フォルダを指定します。/Users/osscafe/my-project/がプロジェクトフォルダだとすると、下記のようになります。/Users/osscafe/my-project/dist/.pipe(<関数>)gulp.srcやプラグインは、必ずstream(またはbuffer)を返します。pipeはUnixでいうところの|と同じで、文字どおり、前のコマンドの結果を次のコマンドにつなげます。}))とあるのは、「『拡張子を.min.cssに』というオプションを付けて、renameプラグインにパイプする」と読めます。オプションの詳細については、各プラグインのページを参照してください(参照►gulp-rename)。最後に一点、ファイルの監視についても触れておきましょう。先ほどのgulpfile.jsに、次のブロックを書き足します。watchコマンドを実行しておけば、ファイルを保存するたびに自動的にコンパイルされ、コマンドをいちいち打つ必要がなくなります(参照►公式ドキュメント)次回予告gulp.jsと同様のツールとして、「Grunt」も人気です。3年前からの開発が進められているので、おそらくこの記事の読者にも使っている方は多いのではないかと思います。筆者自身、Gruntからgulp.jsに移行したユーザです。処理をつなげられるかどうか、ロジックを含められるかどうかにあります。連載の次回ではこのあたりについて紹介しつつ、gulp.jsの大きな魅力の一つである「速さ」の秘密に迫りたいと思います。ツトム)プログラマ、兼デザイナ。オープンソース活動に関わる中で「下北沢オープンソースCafe」を2011年オープン。以後、子供向けのプログラミング道場「CoderDojo」をアジアで初めて開くなど、カフェを拠点とした活動多数。ソーシャル図書館サービスの「リブライズ」共同設立者、コワーキング協同組合理事ほか。プラットフォームチームの意義と実践のポイント1DMM.comの施策から見る、事業をむしばむ「技術負債」への処方箋──リファクタリングの「言語化」でインシデントを予防2企業の7割超が「2025年の崖」を理解していないことが明らかに。プラットフォームチームの意義と実践のポイント1DMM.comの施策から見る、事業をむしばむ「技術負債」への処方箋──リファクタリングの「言語化」でインシデントを予防2企業の7割超が「2025年の崖」を理解していないことが明らかに。プラットフォームチームの意義と実践のポイント1DMM.comの施策から見る、事業をむしばむ「技術負債」への処方箋──リファクタリングの「言語化」でインシデントを予防2企業の7割超が「2025年の崖」を理解していないことが明らかに。NEW新着記事一覧を見るイベント今後の予定を見るCodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。イラストの無断転載を禁じます。記載されているロゴ、システム名、製品名は各社及び商標権者の登録商標あるいは商標です。