2015-06-04 36 views
0

我正在使用metalsmith靜態站點生成器並分別從jade/sass構建html/css文件。不要將「Jade include」文件轉換爲html文件

當我編譯我得到以下

  • .scss文件,.css文件
  • ._scss文件不作爲.css文件生成的,但我可以將它們包括在.scss文件。 (包括SASS文件)
  • .jade文件,.html文件

我很高興與薩斯的工作方式。但是,當我將一些包含文件保存爲.jade文件時,包含文件也會創建爲.html文件。

如:

 

    -home.jade 
    -include.jade 

轉換爲

 

    -home.html 
    -include.html 

,但我只想要

 

    -home.html 

我不想在構建目錄中的多個HTML文件(包括文件不應該被轉換爲html文件)。

任何幫助將不勝感激。

回答

0

您是否正在爲模板使用metalsmith-in-place?你可以簡單地創建一個快速串聯過濾函數刪除模式匹配的文件:

function(){ 
    var minimatch = require("minimatch"); 

    return function skip(files, metalsmith, done){ 
    for (var file in files) { 
     if (minimatch(file, "/**/_*.jade")) delete files[file]; 
    } 

    done(); 
    }; 
} 

所以用下劃線前綴的文件將被跳過。

或者您是否使用metalsmith-layouts?

0

我們可以爲所有的html佈局文件創建一個文件夾,並將它們保存在我們的工作目錄之外(路徑應該調整爲在我們的工作html文件中調用佈局html)。所以只有工作的html文件將被生成,而不是佈局文件。