2010-10-04 5 views
7

Mam kilka plików LESS, które są importowane do jednego pliku głównego (styles.less). W tej chwili moim problemem jest: kiedy dokonuję zmiany w jednym z plików potomnych, muszę zapisać style.less, aby skompilować go do CSS.W LESS CSS czy mogę uzyskać LESS, aby obejrzeć kilka plików, ale skompilować inny plik po zmianie?

Czy istnieje sposób, w jaki mogę poprosić o mniej monitorowania plików potomnych, ale tylko skompilować rodzica?

Cheers, ogłoszenie

+0

Czy używasz wersji ruby? z szynami i większą ilością wtyczek? – hellvinz

+0

Używanie wersji ruby, ale nie na stronie ruby ​​... jeśli to ma sens. –

Odpowiedz

7

Znalazłem rozwiązanie mojego problemu, ale byłoby wspaniale dla większości.

Ponieważ jestem na komputerze Mac, który został zainstalowany less.app (http://incident57.com/less/), używa less.js do kompilacji mniej dla ciebie. Kilka dni temu dodali nową funkcję:

NOWA FUNKCJA: "parsowanie wstecznego @importu." Jeśli masz plik X, który importuje inny plik, Y i wprowadzasz zmiany w Y, X będzie teraz automatycznie przekompilował po zapisaniu Y (jeśli włączona jest autosynfekcja). Ta funkcja jest automatyczna; nic nie można włączyć ani podłączyć. Zobaczysz "wyzwalane przez: X" w wyniku kompilatora, gdy się to stanie.

Okazuje się, że działa bardzo dobrze. Mam nadzieję, że to pomoże komuś!

+0

im więcej wtyczek wydaje się obsługiwać to również http://github.com/cloudhead/more/blob/master/lib/less/more.rb#L105 – hellvinz

+1

To nie działa zgodnie z oczekiwaniami Chcę, aby skompilował plik z '@ import' i nie jest. – ThomasReggi

4

Mam hacked skryptu bash nazwie lesswatch (nie obsługuje „wstecz @import analizowania”), który używa watchdog do nasłuchiwania zdarzeń modyfikacji pliku i lessc skompilować do CSS. Napisałem dzisiaj o tym short blog post.

2

Jest rozwidlenie less.js że zegarki zmiany plików, a nawet wszystkie pliki zawarte poprzez @import (jak zaakceptowanej odpowiedzi powyżej):

https://github.com/wvl/less.js

Autorem less.js does not want opcja --watch starej wersji ruby, więc to widelec może być teraz najlepszym rozwiązaniem. Poprzez node.js może działać na wszystkich platformach.

Powiązane problemy