gulp|gulpの基本的な使い方

gulpというツールを利用すれば、less,sassのコンパイルやファイルコピーなどが簡単にできるようになります。

gulpを利用するにはnode jsをパソコンにインストールする必要があります。今回はnode jsがインストールされている前提で進めいていきます。

まずは、コマンドラインでgulpをインストールします。

$ npm install --save-dev gulp

次にgulpfile.jsというファイルを用意します。このファイルにいろいろな命令をjavascriptで記載していきます。

例えば、test.txtというファイルをcopyというフォルダにコピーするには、gulpfile.jsを下記のように実装します。

var gulp = require('gulp');

gulp.task('copy', function(){
  gulp.src('test.txt')
    .pipe(gulp.dest('copy'));
});

gulpはいろんな命令をタスク単位で管理・実行します。srcで対象のファイルを指定し、dest出力先のフォルダを指定しています。個々の処理はpipeでチェーンしていきます。

gulptaskはコマンドラインで実行します。gulpfile.jsのパスまで移動し。gulp タスク名という形でタスクを実行します。

上記の例ではファイルをコピーするだけでしたが、次はlessをコンパイルするタスクを実装します。

まず、gulp-lessをインストールします。

$ npm install --save-dev gulp-less

lessをコンパイルするタスクを実装します。srcからdestに出力する処理の間に、lessというコマンドを指定することにより、srcで指定したlessファイルをコンパイルしdestフォルダにcssファイルとして出力することができます。

var gulp = require('gulp');
var less = require('gulp-less'); //gulp-lessを参照します

gulp.task('less', function(){
  gulp.src('test.less')
    .pipe(less())
    .pipe(gulp.dest('dst'));
});

タスクを一度実装しておけば、あとはコマンドラインでgulp lessとすれば、lessをコンパイルすることができるようになります。


関連記事

  • watchifyとgulpで自動コンパイルと差分更新をおこなう

    vuejsの開発環境を構築するでvueをビルドする環境を作成しました。今回は開発環境をさらに便利にするために、ファイルが変更されたら自動でビルドを実行し、ブラウザをリロードする処理を実装します。開発用...


  • swig|htmlのヘッダ・フッタの共通化などで実装を効率化する

    swigでhtmlの実装すれば、htmlのヘッダーやフッターの共通化などができ、htmlの管理・実装の効率が格段に上がります。swigとは、テンプレートエンジンの1つで、htmlの中に変数やif文やf...


  • 拡張メタ言語を使用して静的ホームページを簡単に作成する

    ちょっとしたホームページやブログを作成するとき、どのように作成しているでしょうか?最初はhtmlやcssをそのままテキストエディタなどで書いて作成していたが、ページ数が多くなるにつれ管理が大変になり、...


  • テンプレートエンジンのnunjucksとhighlight.js組み合わせる

    便利なテンプレートエンジンのnunjucksのテンプレートの中で、コードをシンタックスハイライト(色付け)する便利なライブラリのhighlight.jsを組み込む方法を紹介します。nunjucksのコ...


  • Nunjucksで独自のファンクションを実行する

    Nunjucksのテンプレートファイルに独自に定義した別ファイルのファンクションを実行する方法を紹介します。gulpでコンパイルする場合を想定しています。gulp-nunjucks-renderでNu...


  • Nunjucksの基本的な使い方 -extends,block,include-

    htmlのおすすめテンプレートエンジンNunjucksがとても便利なのですが、日本語のページがほとんど見当たらなかったので、基本的な使い方を紹介します。ホームページを作成していると、htmlのヘッダと...


  • npmのpackage.jsonを最新のバージョンに更新する

    package.jsonのパッケージを最新のバージョンに更新する方法を紹介します。npmは以下のコマンドを実行すれば、package.jsonに記載されているバージョンに更新されます。最新のバージョン...


  • less|cssに変数を使い実装を効率化する方法

    ホームページを作っていて、規模が大きくなっていくにつれ、気をつけていてもcssのソースはグチャグチャになってしまい、後で見返したときに「これはどこのスタイルだっけ?」となってしまうことがあると思います...


  • gulpの便利なタスク gulpfile.jsの記述例

    gulpの便利なおすすめプラグインで紹介したプラグインなどを利用したgulpの便利なタスクの実装例を紹介します。less,js,htmlのコンパイルや軽量化、watchとlivereload、エラー時...


  • gulp|watchやlivereloadのタスクを停止する方法

    gulpでwatchやlivereloadを停止したい場合、ctrl+Cで停止することができますが、sublime textやatomのプラグインからwatchなどを起動した場合、ctrl+Cで停止す...