LibSass

其它资源

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

    sass.js 项目将 LibSass 转译为纯 JavaScript。还提供了一种能够 在 浏览器中测试 的方式。

  • Lua

    Lua 封装见这里 lua-sass

  • .NET

    LibSass Host 经常 更新,称得上是一个勤奋的优等生。还有 libsass-netNSass, 虽然它们已经很长时间不更新了。

  • 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-scsspylibsass 和 SassPython 已经 有一段时间没有更新了。

  • Ruby

    LibSass 也被移植回了 Ruby,参见 sassc-ruby 项目。

  • Rust

    sass_rs crate 是一个 LibSass 封装,并且经常更新。

  • Scala

    唯一的 Scala 封装 Sass-Scala, 已经多年没有更新了。

关于 LibSass

此项目是 Hampton Catlin 的主意,他是 Sass 的最初创建者。此项目 由 Moovweb 赞助。 Aaron Leung 为 Moovweb 工作,也是此项目的主要开发人员。

LibSass logo