2014-09-10 40 views
1

我想我的部署之前運行rake assets:precompile和我保持havig此錯誤:期間資產薩斯語無倫次壓痕預編譯

rake aborted! 
Sass::SyntaxError: Inconsistent indentation: 1 tab was used for indentation, but the rest of the document was indented using 1 space. 
    (in /home/me/workspace/myapp/app/assets/stylesheets/application.sass) 
(sass):16 

我試圖把標籤與expand --tabs=2 app/assets/stylesheets/application.sass空間,但它是inneffective。

我也嘗試從app/assets/stylesheets/application.sass刪除第16行,但跟蹤仍完全相同,所以(sass):16行可能引用錯誤ID。

我做了expand --tabs=2與我所有的樣式表,但沒有改變。

編輯

要改變卡口插入空格很快,我推薦使用vim和打字:

:set tabstop=2 shiftwidth=2 expandtab 
:retab 
:wq 

或增加第一線,你的.vimrc,然後只需鍵入最後2行。

+0

也許這個錯誤是由在application.sass中調用的文件引發的...檢查所有.sass文件。 – pierallard 2014-09-10 09:50:00

回答

1

討厭的錯誤 - 製表和空格實際上是不同的字符

的底線是,你將有一個標籤的地方,而你會在你的應用程序的其他樣式表使用一個單一的空間。

-

調試

就個人而言,我將着眼於從application.css.sass文件中刪除所有的「依賴」,然後再慢慢添加它們一個接一個。這將給你最明智的想法,問題將駐留在哪裏(如果我是一個投注人,我會說這將在你的一個依賴文件!)

與大多數軟件錯誤修復一樣,解決方案將它切割成裸露的必需品,然後再一塊一塊地構建它

+0

順便說一句,如果你發佈你的'application.css.sass',它肯定會幫你找到錯誤 – 2014-09-10 10:01:33

+0

有趣。我刪除了所有的依賴關係,現在我得到了:'rake中止了! Sass :: SyntaxError:縮進不一致:使用2個空格進行縮進,但其餘文檔使用1個縮進縮進。 (在/home/me/workspace/myapp/app/assets/stylesheets/gmn_webclient.sass) (sass):79 '所以我會嘗試編輯該文件 – user284130 2014-09-10 10:13:42

+0

嗯好吧。首先,這個文件對我來說看起來像一個依賴 - 擺脫所有在'application.css.sass'頂部的「require」調用,然後再次嘗試預編譯。如果它有效,這意味着你的縮進不一致與你的其他樣式表 – 2014-09-10 10:15:13