【发布时间】:2013-12-26 02:59:38
【问题描述】:
我正在使用Shoestrap,这是一个基于 Roots 的 WordPress 主题,它使用 Bootstrap 和更少。我将 Bootswatch Yeti theme variables.less 添加到 assets/less/bootstrap 以替代现有的,还添加了 bootswatch.less。然后我将 bootswatch.less 添加到 bootstrap.less。为了重新编译,我运行了grunt。我添加了here 的 grunt 文件内容。
我遇到了两个问题。一个错误我不知道如何修复,一个主要问题是 grunt 似乎一直在删除 assets/css/main.min.css 然后告诉我文件或目录丢失。以下是我在激活--force 时遇到的错误:
grunt --force
Running "clean:dist" (clean) task
Running "less:dist" (less) task
>> NameError: variable @gutter is undefined in assets/less/app.less on line 5, column 13:
>> 4 .gallery-row {
>> 5 padding: (@gutter / 2) 0;
>> 6 }
Warning: Error compiling assets/less/app.less Used --force, continuing.
Running "uglify:dist" (uglify) task
File "assets/js/scripts.min.js" created.
Running "version" task
Warning: ENOENT, no such file or directory 'assets/css/main.min.css' Used --force, continuing.
Done, but with warnings.
这是我之前在问题中链接到的问题,是字节顺序标记 (BOM) 签名。但是 TextWrangler 和 Dreamweaver 都没有删除它。我在这里找到了一个有用的命令:Using awk to remove the Byte-order mark 然后我跑了
awk '{if(NR==1)sub(/^\xef\xbb\xbf/,"");print}' app.less > app.less
这就像一个魅力!只有主题在样式上仍然没有改变。这很奇怪。
更新我
awk 命令清空了我的 app.less。我还运行了另一个在这里找到的命令:Using awk to remove the Byte-order mark 和那个命令:
sed -i .bak '1 s/^\xef\xbb\xbf//' *.less
确实没有从 app.less 中删除所有数据,但后来我又遇到了同样的错误:
Reading assets/less/app.less...OK
>> NameError: variable @gutter is undefined in assets/less/app.less on line 5, column 13:
>> 4 .gallery-row {
>> 5 padding: (@gutter / 2) 0;
>> 6 }
确实看到 TextMate 添加了属性并删除了使用 xattr -d com.macromates.caret file.less 的属性,但这也没有起到作用。
更新二
似乎变量@gutter不存在。似乎有一个变量@grid-gutter-width。感谢在 Roots Discourse 我收到了通知 - http://discourse.roots.io/t/grunt-hits-a-snag-compiling-gutter-not-defined/940/3。尽管其他变量作为问题弹出,但进行调整无济于事。看看我能不能从鞋带团队那里得到一些反馈。
【问题讨论】:
标签: wordpress node.js twitter-bootstrap gruntjs