LibSass
其它资源
- Lightning fast Sass compiling with libsass, Node-sass and Grunt-sass — by Ben Frain, August 2013
- Node, Express and libSass — Node, Express and libSass: a project from scratch workshop
LibSass 是 Sass 的一个 C/C++ 实现,其目的是易于 与多种编程语言集成。然而,随着时间的推进,它 在功能和 CSS 兼容方面已经落后于 Dart Sass 了。 LibSass 已被弃用—新项目应该使用 Dart Sass。
Wrappers
LibSass 只是一个工具库。如需在本地运行(即,编译 Sass 代码),你需要一个 LibSass 的封装。目前已经有很多 针对 LibSass 的封装了。我们鼓励你实现自己的封装 — 我们希望把 LibSass 带到其它的编程语言中, 而不仅仅局限于 Ruby!
下面是我们目前所知道的 LibSass 封装。有时 针对一种编程语言会有多个封装存在,如果遇到这种情况,我们会将 最近有更新的封装排在第一位。
-
Sass C
SassC (get it?) 是一个用 C 语言开发的封装。
如需在本地计算机上运行此编译器,你需要编译 SassC。 要编译 SassC 的话,你必须将 LibSass 源码下载到本地,或者 安装到你的系统中。针对开发需求,请使用源码 版本。然后必须设置一个环境变量来指向 LibSass 目录,例如:
export SASS_LIBSASS_PATH=/Users/hcatlin/path/libsass编译出来的可执行文件将会放置在 bin 目录下。要运行它,请执行以下 命令:
./bin/sassc [input file] > output.css -
Crystal
sass.cr 是针对 Crystal 编程语言 的 LibSass 封装。
-
Go
go-libsass 是最活跃的 Go 语言封装。gosass 是另一个 LibSass 封装。
C6 是一个兼容 Sass 3.2 规范的 纯 Go 语言的实现,目的是扩展 Sass。 wellington/sass 是一个正在开发中的、 纯 Go 语言实现的词法分析器(lexer)、解析器(parser)和编译器。
-
Java
只有一个 Java 封装 — jsass。 还有一个针对 Maven 的插件 — LibSass Maven plugin。
-
JavaScript
-
Lua
Lua 封装见这里 lua-sass。
-
.NET
LibSass Host 经常 更新,称得上是一个勤奋的优等生。还有 libsass-net 和 NSass, 虽然它们已经很长时间不更新了。
-
Node
node-sass 项目 很受欢迎,我们已经将其纳入了 Sass 在 GitHub 的主仓库中。请查看 此页面 以及 其专门的 twitter 账户 获取 更新信息。
-
Perl
CSS::Sass 项目经常更新。project is updated 还有一个 Text-Sass-XS 项目, 虽然已经有一段时间没有更新过了。
-
PHP
SassPHP 项目是 支持老版本的 PHP 同名项目 的分支,在其基础上添加了一些更新。
-
Python
libsass-python 项目 经常更新。详细信息请参考is updated regularly. There are more details on 其网站。
其他三个 Python 项目, python-scss、 pylibsass 和 SassPython 已经 有一段时间没有更新了。
-
Ruby
LibSass 也被移植回了 Ruby,参见 sassc-ruby 项目。
-
Rust
sass_rscrate 是一个 LibSass 封装,并且经常更新。 -
Scala
唯一的 Scala 封装 Sass-Scala, 已经多年没有更新了。
关于 LibSass
此项目是 Hampton Catlin 的主意,他是 Sass 的最初创建者。此项目 由 Moovweb 赞助。 Aaron Leung 为 Moovweb 工作,也是此项目的主要开发人员。