Nie wiem, czy mogę wyjaśnić problem bez wklejenia całego kodu wszystkich plików, ale spróbuję.Kompas/SASS - nie wszystkie pliki są kompilowane
EDIT Dodałem cały kod do GitHub konta - My Sass structure
używam Windows 8.1 i kompas 0.12.6
W moim folderze public_html mam config.rb teczkę i arkusze stylów. W folderze stylesheets mam katalog sass, w którym przechowuję wszystkie pliki sass. Pliki CSS są generowane w folderze stylesheets/preview (do celów programistycznych) oraz w folderze stylesheets (do celów produkcyjnych).
biegnę kompas oglądania uruchomiony skrypt watch.bat że mam w folderze public_html
Zawartość watch.bat jest:
START compass watch -c config.rb -e development
START compass watch -c config.rb -e production
EXIT
Mój plik config.rb jest:
require 'compass/import-once/activate'
# Require any additional compass plugins here.
# Set this to the root of your project when deployed:
http_path = "../"
sass_dir = "stylesheets/sass"
images_dir = "img"
javascripts_dir = "js"
cache = false
relative_assets = true
add_import_path "stylesheets/sass"
if environment == :development
css_dir = "stylesheets/preview"
line_comments = true
output_style = :nested
end
if environment == :production
css_dir = "stylesheets"
line_comments = false
output_style = :compressed
end
W arkuszu stylów/sass Mam 4 pliki print.scss, medium.scss, small.scss i large.scss
Oba medium.scss i large.scss zacząć:
@import "base/_init";
Ten plik importu częściowego _init z katalogu bazowego i ten ładuje kolejne partials i inne partials załadować kolejne partials.
Problem polega na tym, że zmieniam coś w częściowym Kompas nie zawsze kompiluje wszystkie niezbędne pliki wyjściowe. Na przykład właśnie zmieniłem coś w _settings.scss częściowe i ten jest ostatecznie ładowany przez medium.scss i large.scss (przypominam, że te 2 pliki mają ten sam początek, więc obie powinny zostać skompilowane). W rzeczywistości tak naprawdę tylko plik medium.scss jest obserwowany, a plik large.scss nie jest skompilowany, tak jak powinno być w tym przypadku.
Taką sytuację miałem wcześniej. I zatykać 2 obserwatorów (Ctrl + C i Y), a następnie uruchom ponownie mój watch.bat nie zmieniania czegokolwiek w plikach - tuż po uruchomieniu mam informację:
Zmień wykryty na 15:51 : 33 do: large.scss nadpisuje arkusze stylów/preview/large.css Kompas jest sondowaniem zmian. Naciśnij Ctrl-C, aby zatrzymać.
i
Zmień wykryty w 15:51:33 do: large.scss nadpisania stylów/large.css Kompas jest sondowania zmian . Naciśnij Ctrl-C, aby zatrzymać.
Więc w rzeczywistości nie było zmiany, które należy obserwować, ale jakoś Kompas/Sass nie zawsze go złapać.
Czasami żaden z 2 obserwatorów nie przechwytuje zmian i muszę je zatrzymać i po raz kolejny uruchomić watch.bat, więc nie jest to wygodne do pracy w ten sposób.
Czasem zdarza się nawet, że obserwatorzy są zatrzymywani (tak jak ja użyłem CTRL + C + y), ale niczego nie wciskam, a w cmd nie ma mowy o zamknięciu widocznym. Właśnie przestali
Pytanie: Co może być nie tak i jak to naprawić?
Wskazówka: Czy mógłbyś utworzyć repozytorium w Github z bieżącą strukturą projektu? W ten sposób ktoś może go sklonować i odtworzyć twoje otoczenie. –
Dzięki za sugestię. Właśnie dodałem swoją strukturę projektu do github –