我對node.js使用較少的編譯器,並且我知道使用BOM以UTF-8編碼的文件存在問題。爲此,這個解決辦法的偉大工程:無法導入以UTF-8編碼的較少文件BOM
data = data.replace(/^\uFEFF/, ''); // Strip potential BOM
但是,導入文件時,使用@import
語句仍然給出了第一行語法錯誤。有沒有辦法解決這個問題呢?
我對node.js使用較少的編譯器,並且我知道使用BOM以UTF-8編碼的文件存在問題。爲此,這個解決辦法的偉大工程:無法導入以UTF-8編碼的較少文件BOM
data = data.replace(/^\uFEFF/, ''); // Strip potential BOM
但是,導入文件時,使用@import
語句仍然給出了第一行語法錯誤。有沒有辦法解決這個問題呢?
的BOM會在less.js的下一個版本中剝離 - 1.3.1。你也可以在github源代碼頁面上試用它。
https://github.com/cloudhead/less.js/commit/6696368eb351824f33dc0aac67143d8ea80a085a
A BOM在UTF-8文件中沒有任何意義。
您應該修復源文件,因爲很多其他工具會(正確)對此BOM有問題。所有嚴肅的編輯者都能夠在沒有BOM的情況下編寫UTF-8文件。
如果必須接收和處理這些文件,你應該automaticaly使用例如(在作品的拷貝操作,如果需要的話)解決這些問題:
awk '{if(NR==1)sub(/^\xef\xbb\xbf/,"");print}' INFILE > OUTFILE
我不會控制所有的輸入文件在這裏,所以我不能立足於使用的編輯器的解決方案,我害怕。 –
難道你不能(自動)製作這些文件的副本,並在它們進入構建鏈之前修復它們嗎? –
我想這是一個解決方案,但我想我最好等待一個新的版本或嘗試更改源代碼:) –