没有宝石的Sass或指南针?

Tro*_*ino 99 css sass compass-sass

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

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

tft*_*ftd 51

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

以下原始答案可能适用于您的情况,也可能不适用(取决于您的语言是否已实现对libSass的支持).我决定将其保留为存档原因.


Sass(需要Ruby)

Sass是用Ruby编写的,所以你也需要安装Ruby. 取自萨斯的网站

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

Compass是一个开源的CSS创作框架,它使用Sass样式表语言使编写样式表变得强大而简单. 取自指南针的网站

Less(以js编写,需要包含在页面中的node.js或更少.js)

LESS通过动态行为扩展CSS,例如变量,mixins,操作和函数.LESS可以在客户端(Chrome,Safari,Firefox)和服务器端运行,包括Node.js和Rhino.取自Less的网站

这些是我所知道的主要处理器.您可以为任何其他语言编写自己的解析器/端口.

换句话说,没有Ruby就不能使用sass/compass,因为程序本身(sass和指南针)是用Ruby编写的.所以你肯定需要它才能运行它.


Ale*_*ias 27

这个问题确实不够明确,但我会尝试解决一些问题.还有其他CSS预处理器不依赖于红宝石(二来我的脑海里,现在是,我已经使用并喜欢,但不是那样强大无礼的话,和手写笔,我没有用过,两者都基于JavaScript),但是因为你特别询问Sass + Compass,而且我仍然在寻找相同的答案,我将谈论这个问题.

@JamundFerguson说:

有没有办法在没有Ruby的情况下编译Sass?要看.

Sass是一种预处理语言.有一个用Ruby构建的编译器,任何人都可以用任何语言编写编译器.有一个名为libsass的Sass编译器的C实现,可以用于任何允许导入C库的语言.它是node-sass使用的库,它是一个用Node.js构建的编译器,我还没有尝试过它,也不知道它是如何工作的,如果它已经准备好用于生产.这可能是被移植的时间罗盘问题(也许你最终会做吗?),所以我们可以不依赖于红宝石宝石编译器(目前,有一个节点指南针该模块依赖于Ruby gem).

其他语言

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

原生应用

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

结论

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


gko*_*ond 25

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

它允许您在没有安装Ruby的情况下以令人难以置信的速度本地编译.scss文件到css.

要安装刚刚运行:

npm install node-sass
Run Code Online (Sandbox Code Playgroud)

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

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


小智 11

只需稍微更新一下,您就可以使用SCSS/SASS文件并动态生成正确的文件,而无需使用名为Scout的程序安装Ruby.

Scout有自己独立的ruby环境,并用java编码,因此请确保在使用之前java是最新的.林基在这里.

问候 :)

  • 我宁愿ruby over java;) (7认同)
  • 还是红宝石比空气好:) (2认同)