Utiliser LESS avec Assetics de Symfony 2

Pour pouvoir utiliser des fichiers LESS dans vos projets Symfony2, il vous faut configurer un filtre pour le bundle Assetics fournit de base dans SF2. Mais avant ça, il vous faut évidement installer LESS sur votre machine/serveur, et ce en utilisant NodeJS et NPM. C’est à ma connaissance le seul moyen pour l’utiliser dans Symfony 2. Une procédure d’installation de LESS avec NodeJS et NPM est disponible sur ce blog.

Ensuite, rendez-vous dans le fichier « config.yml » de votre projet, pour y ajouter le filtre en question :

# app/config/config.yml
assetic:
   debug: %kernel.debug%
   use_controller: false
   filters:
       cssrewrite: ~
       less:
           node: /usr/local/bin/node
           node_paths: [/usr/local/lib/node, /usr/local/lib/node_modules]

Si vous avez un doute sur les chemins à saisir, tapez « whereis node« . Le dernier chemin est très important car il permet de localiser les modules node, et donc less, qui d’ailleurs ne s’y trouvera que si vous avez fait une installation globale (npm install -g less, cf la procédure d’installation).

Ensuite il vous suffit de l’utiliser comme n’importe quel autre filtre d’assets :

{% stylesheets
    '@AcmeDemoBundle/Resources/less/*'
    filter='less'
    output='css/all.css'
%}
    	<link href="{{ asset_url }}" rel="stylesheet" media="screen" type="text/css" />
{% endstylesheets %}

Versions utilisées : 2.0, 2.1, 2.2, 2.3

Une réflexion au sujet de « Utiliser LESS avec Assetics de Symfony 2 »

  1. Ping : Utiliser YUI Compressor avec Assetic de Symfony 2 | Symfony Grenoble

Les commentaires sont fermés.