我正在compass watch my_project
在Windows XP上。
index.scss
:
@charset "UTF-8"; @import 'partial'; // ...
_partial.scss
:
p:before { content: '•'; }
config.rb
:
encoding = "utf-8"
产生index.css
:
@charset "UTF-8"; /* line 1, ../sass/_partial.scss */ p:before { content: 'ÔÇó'; } // ...
如何使北斗/萨斯解释部分为UTF-8? 是否有可能,我可以改设为由红宝石使用默认字符编码的环境变量( compass
是一个Ruby应用程序)?
在我的Windows 7的机器,它的工作为以下行添加到我的项目的config.rb
Encoding.default_external = 'utf-8'
还发现指南针/更少/ JS压缩一个伟大的GUI: http://koala-app.com/
也许它不是一个直接的答案,但即使你不能让北斗/萨斯解释UTF只要你想,你可以简单地尝试使用Unicode转义:
p:before {
content: "\2022";
}
其中2022是你的符号十六进制码。 为了得到这个代码,我在IRB执行此:
irb> "•"[0].ord.to_s(16)
=> "2022"
也许不是,如果你有很多的unicode字符的一个很好的解决方案,但至少一种变通方法。 例如, FontAwesome使用它在它的样式表 。
除了转义字符(可预测的,但繁琐)的@NIA的建议,也有解决这个其他两种方法:
- 添加
@charset "utf-8";
到_partial.scss顶部 - 保存_partial.scss为 “UTF-8 BOM”。
由什么我到目前为止阅读来看,这似乎是建立串从磁盘上的文件读取时是通用的Ruby / WIN问题与不正确编码检测/回退。