无点无法编译;在Bootstrap 3少来源

时间:2013-08-30 08:35:18

标签: twitter-bootstrap-3 dotless

我使用无点1.3.1.0编译较少的文件。这与bootstrap 2.x一起工作正常,但在切换到bootstrap 3.0.0(从这里下载源代码:http://getbootstrap.com/getting-started/)后,我突然收到此错误:

  

预期')'但在文件'mixins.less'第47行找到'':[46]://   调整快捷方式[47]:。size(@width; @height){          ------------ ^ [48]:width:@width;

似乎有一个;因为参数之间的分隔符无效。 mixins.less中的原始源代码如下:

...
// Sizing shortcuts
.size(@width; @height) {
  width: @width;
  height: @height;
}
...

我是否必须使用更新的less编译器?或者做过bootstrap释放bug少来源?

更新1:我可以看到,无点的拉取请求存在,解决了问题;

https://github.com/dotless/dotless/pulls “修复了;不在mixin参数列表中支持#319#320”

我将继续使用css文件,直到无线网络修复为止。

4 个答案:

答案 0 :(得分:8)

如果你看看bootstrap的getting started page,你会发现他们说:

  

LESS编译

     

如果您下载原始文件,则需要编译Bootstrap   将LESS文件转换为可用的CSS。要做到这一点,Bootstrap只是正式的   支持Recess,Twitter的CSS hinter建立在less.js之上。

虽然没有使用无点,但我遵循了你使用lessc做的类似路径,然后发现使用凹陷解决了我的问题。也许使用休息也是你的选择吗?

例如,我有一个名为tmpfl.less的文件,其中包含以下内容:

@import "mixins.less";
@import "variables.less";


.wrapper {
  .make-row();
}
.content-main {
  .make-lg-column(8);
}
.content-secondary {
  .make-lg-column(3);
  .make-lg-column-offset(1);
}

如果我在上面运行lessc,我会得到以下结果:

lessc tmpfl.less 
NameError: .size is undefined in mixins.less:47:0
46 // Sizing shortcuts
47 .size(@width; @height) {
48   width: @width;

现在,我成功地使用了休息如下:

recess --compile tmpfl.less > tmpfl.css

<强>更新

为了在.Net环境中使用Recess,特别是在Visual Studio中,可以按照these instructions了解有关安装的详细信息。这些说明提供了概述,但可能省略了有关安装Node.js的一些细节。 Microsoft有一些关于它的brief words,它们链接到a GitHub project,这可能会有所帮助,具体取决于您的Visual Studio版本。

如果你没有沿着Node.js-in-Visual Studio路线走下去,那么真正的主要目标是在某处安装Node.js,最后是npm,Node.js的包管理器,这样你就可以了安装Recess。这可以通过转到the Node.js download并安装Windows版本在Windows上实现。在this stackoverflow discussion中突出显示安装npm。安装完成后,您只需运行npm即可按如下方式安装Recess:

npm install recess -g

这也在本次更新的第一个链接中讨论过。

答案 1 :(得分:6)

我的一位使用dotless的同事已经对Bootstrap 3问题进行了一些修复。 Apparently Bootstrap3现在将使用最新代码进行编译:)

https://github.com/dotless/dotless/commits/master

我希望很快就会有一个更新的NuGet包(基于this tweet

答案 2 :(得分:1)

花了好几个小时让自己开始工作后,我发现此时无点无用。

但是在这里你可以在你的mvc ASP.Net项目中使用Less和Bootstrap 3 Less

http://www.tomdupont.net/2013/10/bootstrap-3-less-bundling-and-aspnet-mvc.html?showComment=1386250367416#c1439130135847828203

这家伙刚刚在我的书中赢得了互联网,如果你可以追踪他的筹​​码交换账户,请告诉我。

答案 3 :(得分:0)

我已经整理了一个使用lessjs编译的httphandler。

它更像是一个概念验证,而不是生产质量代码,但它可能对某些人有用作为起点。

您可以在此处找到来源:

https://bitbucket.org/martinbooth/clearscriptless

如果有人有兴趣尝试使用侏罗纪来做这件事,你可以在这里找到我的尝试:

https://bitbucket.org/martinbooth/jurassicless

我不推荐侏罗纪,因为

  • 它需要对库进行一些错误修复,目前还没有 集成到主项目中我的更改现在位于侏罗纪的主分支中,因此这不再是一个问题(尽管最新版本目前不包含它们)
  • 它很慢,因此 我试过clearscript的原因