2013-01-05 12 views
5

C'è un modo per rendere assetic automaticamente compilare e comprimere file .less?Assetic Symfony2 less + filtro di compressione

Ho provato questo config:

assetic: 
debug:   "%kernel.debug%" 
use_controller: true 
bundles:  ['BloggerBlogBundle', "FOSCommentBundle"] 
#java: /usr/bin/java 
filters: 
    cssrewrite: ~ 
    less: 
     node: /home/igor/nvm/v0.8.16/bin/node 
     node_paths: [/home/igor/nvm/bin/node_modules] 
     apply_to: "\.less$" 
    yui_css: 
     jar: %kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar 
     apply_to: "\.css$|\.less" 

Ma questo si traduce in Css file ottenendo compressi e .less file sempre compilato. Non riesco a fare entrambe le cose: compila e poi comprime i miei file .less.

risposta

9

Ecco il mio config e ramoscello di codice per la compilazione + compressione di file .less nello stesso tempo:

config.yml

# Assetic Configuration 
assetic: 
    debug:   %kernel.debug% 
    use_controller: false 
    java: %java_path% 
    filters: 
     less: 
      node:  %node_base_path% 
      node_paths: [%node_lib_path%, %node_modules_path%] 
     cssrewrite: ~ 
     yui_css: 
      jar: %kernel.root_dir%%jar_file% 
     yui_js: 
      jar: %kernel.root_dir%%jar_file% 

Nel mio ramoscello:

{% block stylesheets %} 
    {% stylesheets 
     '@MyBundle/Resources/public/css/event.less' 
     'css/colorpicker.css' 
     filter='less,?yui_css' 
     output='build/event_layout_2cols.css' 
    %} 
     <link href="{{ asset_url }}" rel="stylesheet" media="screen" /> 
    {% endstylesheets %} 
{% endblock %} 

E ecco il comando per compilare e comprimere:

./app/console assetic:dump --env=prod --no-debug 

Spero che aiuto!

+3

Ero alle prese con questo fino a quando ho capito che è necessario svuotare la cache per prod ** prima ** eseguendo 'assetic: dump'. Dopo di ciò, il metodo sopra ha funzionato per me. – fazy

Problemi correlati