没有ruby的Sass或Compass?

有没有办法使用Sass或Compass或类似的东西没有Ruby?

我一直在环顾谷歌和这个网站,找不到任何东西,任何帮助将不胜感激。 谢谢

Sass最初是为Ruby编写的,但是现在他们已经创build了libSass ,它是Sass引擎的C/C++端口,这使得将引擎集成到IDE或其他语言更容易。 此时,您可以在Ruby, Node.js , Python , PHP , Java , .NET等中使用Sass引擎。 有关更多信息,请访问libSass 。 此外,您的IDE可能有一个插件,可以支持Sass,而不需要使用libSass进行ruby。

下面的原始答案可能适用于您的情况(取决于您的语言是否已经实现了对libSass的支持)。 我决定把它放在归档原因的方式。


Sass(需要Ruby)

Sass是用Ruby编写的,所以你也需要安装Ruby。 采取sass的网站

指南针(需要Ruby,因为它基于SASS)

Compass是一个开放源代码的CSS创作框架,它使用Sass样式表语言使写作样式表function强大而简单。 采取指南针的网站

less(用js编写,需要包含在页面中的node.js或less.js)

LESS通过dynamic行为(如variables,混合,操作和函数)来扩展CSS。 LESS运行在客户端(Chrome,Safari,Firefox)和服务器端,Node.js和Rhino。 采取从less的网站

这些是我知道的主要处理器。 你可以编写你自己的parsing器/端口为任何其他语言的select。

换句话说,如果没有Ruby,就不能使用sass / compass,因为程序本身(sass&compass)是用Ruby编写的。 所以你肯定会需要它来运行它。

这个问题确实不够清楚,但我会尽力解决一些问题。 还有其他一些不依赖于Ruby的CSS预处理器(现在我想到的两个CSS就是Less ,我已经使用过并喜欢它,但是没有Sass和Stylus那么强大,我还没有使用它,都基于JavaScript),但是当您特意询问关于Sass + Compass,而且我还在寻找相同的答案时,我会谈论这个。

贾蒙德·弗格森说:

有没有一种方法来编译Sass没有Ruby? 依靠。

Sass是一种预处理语言。 Ruby中有一个为它编译的编译器,任何人都可以用任何语言编写编译器。 有一个名为libsass的Sass编译器的C实现,可以用于任何允许导入C库的语言。 这是Node-sass使用的库,它是一个内置于Node.js中的编译器,我还没有试过,也不知道它是如何工作的,是否可以用于生产。 这可能是一个时间问题的时候,Compass被移植(也许你最终会这样做?),所以我们可以有一个不依赖于Ruby gem的编译器(目前,有一个节点 – 指南针模块依赖于ruby)。

其他语言

到目前为止,我已经提到了一个N​​ode.js编译器的可能性,你可能知道它是一个JavaScript环境,是networking的语言和我select的语言。 但是你没有指定编译器写入哪种语言。 我认为可能有编译器以多种语言构build,例如@EricMeyer提到了一个Python编译器。 也许他正在使用pyScss ? 这似乎内置了对Compass的支持。 但是,你需要一个Python环境。 所以事情是:除非你运行本地编译的二进制文件,否则你需要编译器的环境 。 (Less less.js可以包含在页面上运行客户端,避免编译步骤,但不意味着在生产中使用它。)

原生应用

我已经工作了一年CodeKit ,很好,编译Sass / Compass,Less,Stylus和模板语言,比如Haml,Slim,Jade等等。当你自动更改你的资产并且在浏览器上看到更改时重build你的资源立即。 唯一我不喜欢的是,当移动到另一台计算机,安装CodeKit,签出项目,并试图使用它,我不得不重新configuration项目设置,我必须记住,所以我可以得到一个构build就像我在另一台电脑上制作的那个一样。 此外,我开始与一个团队合作,他们还要configuration相同的设置项目(有时没有相同的项目configuration导致丑陋的不一致),也使用Ubuntu的团队成员不能使用它。 这就是为什么我开始考虑制作一个命令行工具来build立项目,并立即发现Grunt ,并爱上它。 正如@Dave提到的那样,有Scout ,也有LiveReload ,但是没有使用它们。

结论

结论是我没有一个强有力的结论。 我仍然在寻找相同的答案,但是我希望这个答案对于在Ruby环境之外编译Sass / Compass的状态有一点点的了解。

实际上有一个库为Node.js提供了绑定到libsass,Sass的C版本: https ://npmjs.org/package/node-sass

它允许你以不可思议的速度编译.scss文件到css,而不需要安装Ruby。

要安装就运行:

 npm install node-sass 

如果需要,还有一个Grunt扩展: https : //github.com/sindresorhus/grunt-sass (这是我一直在寻找这个问题)

了解更多信息: https : //github.com/andrew/node-sass

只需稍微更新一下,就可以使用SCSS / SASS文件,并通过使用名为Scout的程序来即时生成正确的文件,而无需安装Ruby。

Scout有它自己的独立的ruby环境,并用java编码,所以确保你的java在使用之前是最新的。 林克在这里。

问候 :)

你可以实际parsingsass而不用ruby,你可以使用node-sass。 详细信息在这里: https : //github.com/andrew/node-sass

如果这是.NET,现在有一个libsass的包装 。 可从Nuget获得 。

Adobe Brackets (免费,开源)可以在更改文件时编译LESS,SASS和Stylus,并在实时预览中更新样式,只需要从扩展pipe理器安装所需的扩展。 得到括号和享受!

编辑:如其他问题所示,如果你已经安装了nodejs, node-sass也是一个不错的select。