我正在尝试使用gulp-less插件来编译bootstrap 2.1.0 less文件(是一个非常旧的版本)到CSS。
var gulp = require('gulp'),
less = require('gulp-less');
// Compile Our Less
gulp.task('less', function() {
return gulp.src('bower_components/bootstrap/less/bootstrap.less')
.pipe(less().on('error', function(err){
errorLog(err);
}))
.pipe(gulp.dest('compiled-bootstrap-css'));
});
gulp.task('default', ['less']);
function errorLog(err){
console.log(err);
}
无论我使用哪个版本,我都会看到解析错误:
[16:08:01] Starting 'less'...
{ [Error: Missing closing ')' in file d:\Users\trouti\IdeaProject
bower_components\bootstrap\less\mixins.less line no. 552]
type: 'Parse',
filename: 'd:\\Users\\trouti\\IdeaProjects\\PublicPortal\\bower
otstrap\\less\\mixins.less',
index: 17957,
line: 552,
callLine: NaN,
callExtract: undefined,
column: 8,
extract:
[ ' .spanX (@index) when (@index > 0) {',
' (~".span@{index}") { .span(@index); }',
' .spanX(@index - 1);' ],
message: 'Missing closing \')\' in file d:\\Users\\trouti\\Idea
cPortal\\bower_components\\bootstrap\\less\\mixins.less line no.
stack: undefined,
lineNumber: 552,
fileName: 'd:\\Users\\trouti\\IdeaProjects\\PublicPortal\\bower
otstrap\\less\\mixins.less',
name: 'Error',
showStack: false,
showProperties: true,
plugin: 'gulp-less',
__safety: { toString: [Function] } }
我相信为了成功编译,该工具需要使用Less的版本1.3.3:
http://twitter-bootstrap.1086183.n5.nabble.com/Error-compiling-less-files-v-2-0-4-td788.html
不幸的是,所有可用的gulp-less版本都是在更高版本上构建的。
如何将较少的1.3.3集成到我的gulp构建中?
编辑:这不是重复:
LESS: Unrecognized input error when using Bootstrap
因为答案是编辑bootstrap.less文件。我不能/不想这样做,因为我在构建时使用bower动态提取引导程序文件。我知道我可以修复它,如果我使用较少的1.3.3但是如果所有版本的gulp-less插件使用更高版本,我怎么能从gulp构建中调用它。