2013-08-30 30 views
20

我使用dotless 1.3.1.0編譯less-files。這工作得很好與引導2.x中,但切換到引導3.0.0後(從這裏下載源:http://getbootstrap.com/getting-started/),我突然得到這個錯誤:無點無法編譯; in Bootstrap 3 less source

Expected ')' but found ' ' on line 47 in file 'mixins.less': [46]: // Sizing shortcuts [47]: .size(@width; @height) { ------------^ [48]: width: @width;

似乎有;因爲參數之間的分隔符無效。 mixins.less中的原始代碼如下所示:

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

我是否必須使用更少的編譯器?還是引導釋放越野車少源?

UPDATE 1:我可以看到,存在針對無點的拉請求,修復了問題;

https://github.com/dotless/dotless/pulls 「修正了;在mixin的參數不支持列出#319#320」

直到這已被固定在帶點我會去使用CSS文件。

回答

6

我的一個同事使用帶點已經具備了自舉了幾個補丁3個問題合併。 Apparently Bootstrap3現在將最新的代碼:)

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

我期待更新的NuGet包將很快面市(基於this tweet

+0

看起來不錯,但它似乎不適用於dotless.Compiler可執行文件。在觀看對LESS文件的更改時,它仍然很窒息。 :( –

+1

粉筆這個一直到愚蠢......頁面上的「下載DLL」鏈接推下1.3.1,而不是1.4.1。爲了得到你必須抓住最後一個拉鍊檢查,並然後在Visual Studio中構建。中提琴。其他有用的東西,這是我們的下一步:http://tedgustaf.com/blog/2010/11/setup-dotless-in-aspnet-project/ - 說明如何將構建器置於您項目中的構建過程。 –

8

如果檢查出引導的getting started page,你會發現,他們的狀態:

LESS compilation

If you download the original files, you need to compile Bootstrap's LESS files into usable CSS. To do that, Bootstrap only officially supports Recess, Twitter's CSS hinter built on top of 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的細節。微軟有一些關於它的brief words,他們鏈接到a GitHub project這可能會有所幫助,具體取決於您的Visual Studio版本。

如果你不下去Node.js-in-Visual Studio路由,那麼真正的主要目標是將Node.js安裝在某處,然後最終npm,Node.js的包管理器,讓你可以安裝Recess。這可以在Windows上通過the Node.js download和安裝Windows版本來實現。在this stackoverflow discussion中突出顯示安裝npm。一旦安裝,你只需要運行NPM安裝休會如下:

npm install recess -g 

即在本次更新的第一環節進行了討論。

+0

謝謝你抽空回答。我會給它一個去尋找一個.net休息框架,與less.net一樣順暢地工作。你碰巧知道任何,你可以推薦? :) –

+0

我在Linux中使用Node.js,但是我已經更新了我的響應,並提供了在.Net環境中運行的詳細信息。如果這對您有幫助,請務必將其標記爲答案。我正在努力提高我的代表。在stackoverflow上。 –

+0

謝謝@edl,它適合我!節點+凹陷的岩石! –

0

我已經放在一起使用lessjs少編譯的httphandler。

它不僅僅是生產質量代碼的概念證明,但它對於一些人來說可能是有用的起點。

您可以在這裏找到來源:

https://bitbucket.org/martinbooth/clearscriptless

如果有人有興趣嘗試這種使用侏羅紀做的,你可以在這裏找到我的嘗試:

https://bitbucket.org/martinbooth/jurassicless

我不建議侏羅紀這個,因爲

  • 它需要對庫中的一些錯誤修復,目前並不將 集成到主項目中我的更改現在位於侏羅紀的主分支中,因此這不再是問題(儘管最新版本目前不包括它們)
  • 它很慢,因此 原因,我試過clearscript