Czy jest sposób na użycie Sass, Compass lub czegoś podobnego bez Rubiego?
Rozglądałem się po Google i tej stronie i nie mogę nic znaleźć, każda pomoc byłaby mile widziana. Dziękuję Ci
Czy jest sposób na użycie Sass, Compass lub czegoś podobnego bez Rubiego?
Rozglądałem się po Google i tej stronie i nie mogę nic znaleźć, każda pomoc byłaby mile widziana. Dziękuję Ci
Odpowiedzi:
Sass został pierwotnie napisany dla Rubiego, ale teraz stworzyli libSass, który jest C/C++
portem silnika Sass, co ułatwia integrację silnika z IDE lub innym językiem. W tym momencie możesz użyć silnika Sass w Ruby, Node.js , Python , PHP , Java , .NET i innych. Aby uzyskać więcej informacji, odwiedź libSass . Ponadto, twoje IDE może mieć wtyczkę, która wspierałaby Sass, bez potrzeby używania ruby, używając libSass.
Oryginalna odpowiedź poniżej może, ale nie musi, odnosić się do twojej sytuacji (zależy od tego, czy twój język ma zaimplementowaną obsługę libSass, czy nie). Postanowiłem zostawić to tak, jak jest ze względów archiwalnych.
Sass (wymaga Ruby)
Sass jest napisany w języku Ruby, więc będziesz potrzebować również zainstalowanego Rubiego. Zaczerpnięte z witryny Sass
Kompas (wymaga Rubiego, ponieważ jest oparty na SASS)
Compass to framework do tworzenia CSS typu open source, który wykorzystuje język arkuszy stylów Sass, aby pisanie arkuszy stylów było potężne i łatwe. Zaczerpnięte z witryny kompasu
Less (napisane w js, wymaga dołączenia node.js lub less.js na stronie)
LESS rozszerza CSS o dynamiczne zachowanie, takie jak zmienne, miksery, operacje i funkcje. LESS działa zarówno po stronie klienta (Chrome, Safari, Firefox), jak i po stronie serwera, z Node.js i Rhino. Zaczerpnięte z witryny Lessa
Są to główne znane mi procesory. Możesz napisać własny parser / port dla dowolnego innego wybranego języka.
Innymi słowy, nie, nie możesz używać sass / compass bez posiadania Rubiego, ponieważ sam program (sass i kompas) JEST napisany w Rubim. Więc na pewno będziesz go potrzebować, aby go uruchomić.
To prawda, że pytanie nie jest wystarczająco jasne, ale spróbuję rozwiązać kilka problemów. Tam są inne CSS pre-procesory, które nie opierają się na dwóch najbliższych Ruby (moim zdaniem właśnie teraz są mniej , co ja używałem i lubi, ale nie tak silny jak Sass, a Stylus , które nie zostały wykorzystane, oba oparte na JavaScript), ale ponieważ pytasz konkretnie o Sass + Compass, a ja wciąż szukam tej samej odpowiedzi, opowiem o tym.
@JamundFerguson powiedział:
Czy istnieje sposób na skompilowanie Sassa bez Rubiego? Zależy.
Sass to język przetwarzania wstępnego. Jest kompilator wbudowany w Ruby i każdy może napisać kompilator w dowolnym języku. Istnieje implementacja kompilatora Sass o nazwie libsass w języku C, której można używać w dowolnym języku, który umożliwia importowanie bibliotek C. Jest to biblioteka używana przez node-sass , który jest kompilatorem zbudowanym w Node.js , którego jeszcze nie próbowałem i nie wiem, jak może działać i czy jest gotowy do użytku produkcyjnego. Przeniesienie Compassa może być kwestią czasu (może w końcu to zrobisz?), Więc możemy mieć kompilator, który nie zależy od klejnotu Ruby (obecnie istnieje moduł node-compass , który opiera się na klejnot Ruby).
Do tej pory wspomniałem o możliwości kompilatora Node.js, który, jak być może wiesz, jest to środowisko JavaScript, będące językiem sieci i moim wybranym językiem. Ale nie określiłeś, w jakim języku chcesz pisać kompilator. Myślę, że mogą istnieć kompilatory zbudowane w wielu językach, na przykład @EricMeyer wspomniał o kompilatorze Pythona . Może używa pyScss ? Wygląda na to, że ma wbudowaną obsługę Compass. Ale wtedy potrzebujesz środowiska Python. Więc chodzi o to: trzeba trochę środowisko dla kompilatora chyba uruchomić natywnie skompilowane pliki binarne. (Less ma less.js, który można dołączyć do strony, aby uruchomić po stronie klienta i uniknąć kroku kompilacji, ale nie jest przeznaczony do używania go w środowisku produkcyjnym).
Pracuję przez rok z CodeKit, który działa bardzo dobrze, kompiluje języki Sass / Compass, Less, Stylus i szablony, takie jak Haml, Slim, Jade, itp. Odbudowuje zasoby, gdy zmieniają się automatycznie, i natychmiast widzisz zmiany w przeglądarce. Jedyne, co mi się nie podobało, to to, że przenosząc się na inny komputer, instalując CodeKit, sprawdzając projekt i próbując go użyć, musiałem ponownie skonfigurować ustawienia projektu, o czym musiałem pamiętać, aby móc przejść do kompilacji jak ten, który zrobiłem na innym komputerze. Zacząłem też pracować z zespołem, a oni musieli także skonfigurować projekt z tymi samymi ustawieniami (czasami brak takiej samej konfiguracji projektu prowadził do brzydkich niespójności), a także członkowie zespołu używający Ubuntu nie mogli go używać. Dlatego zacząłem myśleć o stworzeniu narzędzia wiersza poleceń do tworzenia projektów i odkryłemnatychmiast i zakochałem się w nim. Jak wspomniał @Dave, jest Scout, a także LiveReload , ale ich nie używaliśmy.
Wniosek jest taki, że nie mam mocnego wniosku. Nadal szukam tej samej odpowiedzi, ale mam nadzieję, że ta odpowiedź rzuci trochę światła na stan kompilowania Sass / Compass poza środowiskiem Ruby.
Właściwie istnieje biblioteka, która zapewnia powiązanie Node.js z libsass, wersją Sass w C: https://npmjs.org/package/node-sass
Pozwala na natywne kompilowanie plików .scss do css z niesamowitą szybkością bez zainstalowanego Rubiego.
Aby zainstalować wystarczy uruchomić:
npm install node-sass
W razie potrzeby istnieje również rozszerzenie Grunt: https://github.com/sindresorhus/grunt-sass (właśnie tego szukałem w tym pytaniu)
Dowiedz się więcej na: https://github.com/andrew/node-sass
To tylko mała aktualizacja, możesz używać plików SCSS / SASS i generować poprawne pliki w locie bez instalowania Ruby za pomocą programu o nazwie Scout.
Scout ma własne, niezależne środowisko ruby i jest zakodowany w Javie, więc przed użyciem upewnij się, że ta wersja jest aktualna. Linky tutaj.
Pozdrowienia :)
Możesz faktycznie parsować sass bez ruby, możesz użyć node-sass. szczegóły tutaj: https://github.com/andrew/node-sass
Jeśli to jest dla .NET, jest teraz opakowanie dla libsass . Dostępne od Nuget .
Adobe Brackets (darmowy, open source) może kompilować LESS, SASS i Stylus po zmianie plików i aktualizować style podczas podglądu na żywo, wystarczy zainstalować wymagane rozszerzenia z menedżera rozszerzeń. Kup wsporniki i ciesz się!
Edycja: Jak sugerują inne pytania, node-sass jest również dobrą opcją, jeśli masz już zainstalowany nodejs.