1

私が使用しているタスクの簡略版は次のとおりです。

g = require 'gulp'
$ = require('gulp-load-plugins')()

g.task 'vendor:styles', ->
    sass_filter = $.filter('*.scss')
    less_filter = $.filter('*.less')

    g.src(['vendor/font-awesome-4.2.0/scss/font-awesome.scss', 'vendor/bootstrap-3.2.0/less/bootstrap.less'])
        .pipe $.sourcemaps.init()
        .pipe(sass_filter).pipe($.sass()).pipe(sass_filter.restore())
        .pipe(less_filter).pipe($.less(strictMath: true)).pipe(less_filter.restore())
        .pipe $.concat('vendor.css')
        .pipe $.sourcemaps.write('./maps')
        .pipe g.dest('.tmp/styles/vendor')

(これはCoffeescriptですが、Javascriptはほぼ同じです。上記が解析しにくい場合は、JSを提供できます。)

上記を実行すると、gulp-sourcemaps は以下をスローします。

gulp-sourcemap-write: source file not found:/Users/pikeas/Documents/code/pypjs/crypto/front/merged/vendor/font-awesome-4.2.0/scss/normalize.less
...(repeated x20, for print.less, carousel.less, etc)

つまり、Font Awesome ディレクトリで Bootstrap のファイルを探します。gulp-filter の代わりに gulp-if を使用してみましたが、同じエラーで失敗します。

このタスクを書く正しい方法は何ですか?

4

1 に答える 1