2012-11-06 9 views
8

Pracuję nad projektem Compass i moje ostatnie wyjście css jest ogromny, więc to musi być być blessed.Jak połączyć kompas z błogosławieństwem?

Używam Codekit do kompilowania moich plików SCSS, i ma opcję błogosławienia dla mniej i sass plików, ale pechowo ta opcja wydaje się być niedostępna dla projektów kompasu (BTW nie ma obejścia, aby rozwiązać problem https://github.com/bdkjones/CodeKit/issues/163)

Czy istnieje alternatywny sposób to zrobić automatycznie po zakończeniu procesu kompilacji? Czy jest możliwe, aby obejrzeć plik css z nodejs, a następnie go pobłogosławić?

============================================== ======

UPDATE

nie używam Codekit już używam Grunt budować aktywów projektu i działa jak czar.

Odpowiedz

3

Cóż, wydaje się, że za pomocą this reference można po prostu zrobić coś takiego:

on_stylesheet_saved do |filename| 
    system('blessc ' + File.basename(filename)) 
end 

po zainstalowaniu Bless.

co robi jest po prostu dołączenie tego zdarzenia po kompilacji plik Kompas :) Enjoy

+1

binarny jest „blessc” i nie "pobłogosław". –

+3

To działa doskonale, po prostu musiałem ustawić właściwą drogę do wyjścia css: 'on_stylesheet_saved zrobić | pliku | exec ('blessc' + css_dir + "/" + File.basename (filename) + "-f") end' –

+0

Z jakiegoś powodu nie jest to teraz pracuje dla mnie. Być może coś zmieniło się dzięki mojej wersji CodeKit ...Kiedyś pracował, ale teraz nie ... – Scott

1

Działa to dla komendy regularnie kompilacji, ale to nie działa, gdy go obejrzeć. Po zakończeniu Bless proces oglądania się kończy.

0

stwierdziliśmy, że blessc prostu nie wykonać, chciałbym dostać jeden z tych dwóch błędów:

config.rb: Nie ma takiego pliku lub katalogu - blessc (cokolwiek filename)

lub

env: węzeł: Nie ma takiego pliku lub katalogu

Okazuje się to dlatego, blessc/node.js są instalowane w katalogu/usr/local/bin, i że nie jest w zmiennej PATH dla Ruby (exec/usr/bin:/bin:/usr/bin:/sbin) . Poniższy kod działa:

on_stylesheet_saved do |filename| 
    exec('PATH=$PATH:/usr/local/bin; blessc ' + filename + ' -f') 
end 

Edited by dodać: Jeśli po tym dostaniesz błędy mówiąc, że pliki nie są css od błogosławi, sprawdzić, czy ścieżka bezwzględna do pliku zawiera spacje. Można uciec z białą przestrzeń, wykonując następujące czynności:

on_stylesheet_saved do |filename| 
    exec('PATH=$PATH:/usr/local/bin; blessc ' + (filename.gsub! ' ', '\ ') + ' -f') 
end 
0

można spróbować następujący blok kodu, zrobiłem kilka zmian Julian Xhokaxhiu odpowiedź:

on_stylesheet_saved do |filename| 
    begin 
    puts "Counting number of selector in :: " + filename 
    result = system('blessc',filename,'-f') 

    if not result 
     Kernel.exit(false) 
    else 
     puts "Blessed the file to support Older version of IE." 
    end 

    rescue Exception => e 
    puts "Please install bless.\nsudo npm install -g bless." 
    Kernel.exit(false) 
    end 
end