105

Ruby なしで Sass や Compass などを使用する方法はありますか?

私はグーグルとこのサイトを見回してきましたが、何も見つかりません。助けていただければ幸いです。ありがとうございました

4

8 に答える 8

53

Sass はもともと Ruby 用に作成されましたが、Sass エンジンのポートであるlibSassを作成C/C++したため、エンジンを IDE や別の言語に簡単に統合できます。この時点で、Ruby、Node.jsPythonPHPJava.NETなどで Sass エンジンを使用できます。詳細については、libSassを参照してください。また、IDE には、libSass を使用することにより、Ruby を必要とせずに Sass をサポートするプラグインが含まれている場合があります。

以下の元の回答は、状況に当てはまる場合と当てはまらない場合があります (言語が libSass のサポートを実装しているかどうかによって異なります)。アーカイブの都合上、そのままにしておくことにしました。


Sass (Ruby が必要)

Sass は Ruby で記述されているため、Ruby もインストールする必要があります。 サスのサイトより引用

Compass (SASS に基づいているため、Ruby が必要です)

Compass はオープンソースの CSS オーサリング フレームワークで、Sass スタイルシート言語を使用してスタイルシートを強力かつ簡単に記述できるようにします。 コンパスのサイトより引用

Less (js で記述、node.js または less.js がページに含まれている必要があります)

LESS は、変数、ミックスイン、操作、関数などの動的な動作で CSS を拡張します。LESS は、Node.js と Rhino を使用して、クライアント側 (Chrome、Safari、Firefox) とサーバー側の両方で実行されます。Lessさんのサイトより引用

これらは、私が知っているメイン プロセッサです。選択した別の言語用に独自のパーサー/ポートを作成できます。

つまり、プログラム自体 (sass & compass) は Ruby で書かれているため、Ruby がないと sass/compass を使用することはできません。したがって、実行するには必ず必要になります。

于 2012-09-29T23:02:26.010 に答える
28

実際、Sass の C バージョンである libsass への Node.js のバインドを提供するライブラリがあります: https://npmjs.org/package/node-sass

Ruby がインストールされていなくても、信じられないほどの速度で .scss ファイルを css にネイティブにコンパイルできます。

インストールするには、次を実行します。

npm install node-sass

また、必要に応じて Grunt 拡張機能もあります: https://github.com/sindresorhus/grunt-sass (これは、この質問で探していたものです)

詳細については、 https ://github.com/andrew/node-sass をご覧ください。

于 2014-01-22T21:03:09.930 に答える
27

質問が十分に明確でないことは事実ですが、いくつかの問題に対処しようとします。Ruby に依存しない CSS プリプロセッサ他にもあります (今思いつくのは、私が使用して気に入ったLessですが、 Sassほど強力ではありません。どちらも JavaScript に基づいています) ですが、Sass+Compass について具体的に尋ねているので、私はまだ同じ答えを探しているので、それについて話します。

@JamundFerguson 氏は次のように述べています。

RubyなしでSassをコンパイルする方法はありますか? 依存します。

がある

Sass は前処理言語です。そのためのコンパイラが Ruby に組み込まれており、誰でも任意の言語でコンパイラを作成できます。libsassと呼ばれる Sass コンパイラの C 実装があり、C ライブラリをインポートできる任意の言語で使用できます。これは、 Node.jsに組み込まれたコンパイラであるnode-sassで使用されるライブラリです。これはまだ試しておらず、どのように機能するか、および本番環境で使用する準備ができているかどうかもわかりません。Compass が移植されるのは時間の問題かもしれません (もしかしたらそうするかもしれません?) ので、Ruby gem に依存しないコンパイラーを持つことができます (現在、依存するnode-compassモジュールがあります)。ルビー宝石)。

他の言語

ここまで、Node.js コンパイラの可能性について述べてきました。これは、ご存知かもしれませんが、Web の言語であり、私の選択言語である JavaScript 環境です。しかし、コンパイラをどの言語で書きたいかを指定していませんでした。たとえば、@EricMeyer はPythonコンパイラについて言及しました。多分彼はpyScssを使用していますか?Compassのサポートが組み込まれているようです。ただし、Python 環境が必要です。つまり、ネイティブにコンパイルされたバイナリを実行しない限り、コンパイラ用の環境が必要になります(Less には、クライアント側で実行してコンパイル手順を回避するためにページに含めることができる less.js がありますが、本番環境で使用するためのものではありません。)

ネイティブ アプリ

私はCodeKitで1年間働いてきましたは非常にうまく機能し、Sass/Compass、Less、Stylus、および Haml、Slim、Jade などのテンプレート言語をコンパイルします。資産が自動的に変更されると再構築され、ブラウザーで変更がすぐに表示されます。私が気に入らなかった唯一のことは、別のコンピューターに移動し、CodeKit をインストールし、プロジェクトをチェックアウトして使用しようとしたときに、プロジェクトの設定を再構成する必要があったことです。私が他のコンピュータで作ったもののように。また、私はチームとの作業を開始しましたが、同じ設定でプロジェクトを構成する必要があり (同じプロジェクト構成を持たないと、醜い不整合が発生する場合があります)、Ubuntu を使用しているチームのメンバーもそれを使用できませんでした。それか'すぐに、そしてそれに恋をしました。@Dave が述べたように、ScoutLiveReloadがありますが、使用していません。

結論

結論は、私は強い結論を持っていません。私はまだ同じ答えを探していますが、この答えがRuby環境外でSass/Compassをコンパイルする状況に少し光を当てることを願っています.

于 2013-04-20T00:20:11.933 に答える
11

これについて少しだけ更新すると、Scout というプログラムを使用することで、Ruby をインストールしなくても、SCSS/SASS ファイルを使用してその場で正しいファイルを生成できます。

Scout には独自の自己完結型 Rub​​y 環境があり、Java でコーディングされているため、使用する前に Java が最新であることを確認してください。ここリンキー。

よろしく:)

于 2013-01-07T19:33:51.643 に答える
4

実際には ruby​​ なしで sass を解析できます。node-sass を使用できます。詳細はこちら: https://github.com/andrew/node-sass

于 2013-11-15T22:41:17.217 に答える
2

Adobe Brackets (無料のオープン ソース) は、ファイルが変更されたときに LESS、SASS、および Stylus をコンパイルし、ライブ プレビュー中にスタイルを更新できます。拡張機能マネージャーから必要な拡張機能をインストールするだけで済みます。ブラケットを入手してお楽しみください!

編集: 他の質問が示唆するように、nodejs が既にインストールされている場合は、 node-sassも適切なオプションです。

于 2014-09-18T08:11:51.063 に答える