2014-04-16 2 views
2

Globbing을 사용하여 LESS 파일 세트를 컴파일 할 수없는 문제가 있습니다.Gulp globbing and negate

내 구조는 이것이다 :

+ dir3 
    - dir3.1 
    - dir3.1.1 
    - dir3.1.2 
    - dir3.2 
    - dir3.3 
    - responsive.less 
    - fixedwidths.less 

각 디렉토리 덜 파일 집합을 가지고 내가 할 노력하고있어 것은 responsive.less 및 fixedwidths.less를 컴파일하는 것입니다하지만 난 모든 나머지를 무시하려는 dir3의 폴더

var paths = { 
    root: 'Publication/', 
    source: 'Publication/LESS/', 
    styles: 'Publication/**/*.less' 
} 

// Compile less files 
gulp.task('styles', function() { 
    gulp.src([ 
      paths.source+'**/*.less', // compile it all 
      '!'+paths.source+'**/variables.less', // ignore all variables.less 
      paths.source+'responsive/*.less', // compile responsive & fixedwidths 
      '!'+paths.source+'responsive/**/*.less' // ignore all less files in subdir of dir3 
     ]) 
     .pipe(less()) 
     .pipe(gulp.dest(paths.root+'build')) 
}); 

나는 paths.source+'responsive/*.less'이 responsive.less 및 fixedwidths.less 일치하는 것이며, '!'+paths.source+'responsive/**/*.less' 다른 모든 것을 무시 것이라고 기대했지만 그 일이 될 것 같다 아니다 : 적은 파일을 컴파일

내 꿀꺽 글롭이다. 후자의 비트 코드는 dir3의 모든 처리를 중단하는 것으로 보입니다.

아무 것도 도움이 될 수 있습니까?

답변

0

부정 glob 패턴과 관련된 node-glob에 버그가 있습니다. bower issuenode-glob issue을 참조하십시오. 어쩌면 당신 문제는 이것과 관련이 있을까요?

만일 그렇다면이 해결 방법은 './!('+paths.source+'responsive/**/*.less)'을 사용해야합니다.