2011-09-09 2 views
9

Sto cercando un minificatore di css che potrei usare nelle applicazioni di rails (non gziper) che non ha bisogno di un'installazione del compressore YUI da riga di comando. Sto lavorando ad un software di content mangament in cui il css è incollato in una textarea e poi voglio minimizzare quindi gzip e inviarlo ad amazon. Quindi quelle soluzioni non sono OK che usano una pre-elaborazione della riga di comando ... Qualche idea?Ho bisogno di un minificatore di css in rubino

I servizi di minificatore online sono i benvenuti.

+0

C'è la Google Closure Compiler, ma che non è scritto in Ruby AFAICT ... – Blender

+0

Beh ... Che è buono per comprimere il javasript ... – Boti

+0

Oh, whoops. Per qualche ragione ho letto male i CSS e ho pensato JS. Ignora quel commento ... – Blender

risposta

4

credo di aver trovato la mia gemma:

'ruby-yui-compressor' 

Tutto quello che devono fare:

gem "yui-compressor", "~> 0.9.6", :require => "yui/compressor" 
.... 
compressor = YUI::CssCompressor.new 
compressor.compress 'body {line-height: 1}   \ntable {border-collapse: collapse; border-spacing: 0}' 

=> "body{line-height:1}\\ntable{border-collapse:collapse;border-spacing:0}" 
2

Che ne dici di Juicer?

+0

Usando Juicer avrei bisogno di fare: 'juicer install yui_compressor' Che non si può fare su heroku – Boti

+0

ottima soluzione! Il collegamento – Ziggy

+0

dà l'errore 404 –

10

Si potrebbe anche provare SASS con :syntax => :scss, :style => :compressed.

+0

Poiché il css proviene da una textarea come stringa, come si dice all'API SASS di comprimere una stringa? – Boti

+3

Come nell'esempio riportato nella pagina doc ho collegato: 'engine = Sass :: Engine.new (" # main {background-color: # 0000ff} ",: sintassi =>: scss,: style =>: compresso); engine.render' – Luchs

0

1.Installare Ruby e aprire 2.installare gem inserendo "gem install saas" premere invio. 3.type sass -scss -t compresso 'file sorgente' quindi 'destinazione file'.

ex sass -scss -t compressa sass/_theme.scss css/theme.css