le 10 déc. 2009 à 11:35:59

Publié par Axel Etcheverry

Pour diminuer la taille des téléchargements, on utilise la minimisation.
La minimisation est le fait de supprimer tout ce qui est inutile au fichier : "espaces blancs"; "commentaires" et éventuellement les noms de variables longs.

Plusieurs méthodes existent, mais la plus sûre et pratique, est d'employer directement Eclipse PDT au moment de l'enregistrement du fichier js/css.

Pour se faire il faut juste un script shell/bash a faire exécuter par Eclipse.

Prérequis



Scripts


minifier.sh
#!/bin/bash
# minifies js and css files
if [ -f $1 ]
then
    file=`echo $1 | sed 's/.src//'`
    java -jar yuicompressor-{version}.jar $1 -o $file --charset utf-8 --nomunge
fi
minifier.bat
@echo off
set givenfile=%1
set file=%givenfile:.src=%
java -jar yuicompressor-{version}.jar %1 -o %file% --charset utf-8 --nomunge

Installation


Dans votre projet eclipse rajouter un dossier build et copier le jar yuicompressor-{version}.jar et les 2 scripts minifier.sh et minifier.bat

Configuration


Faite un click droit sur votre projet puis aller dans Properties puis dans Builders,
Ajouter un nouveau buider (bouton New...).
Puis sélectionner Program puis OK.
Ensuite choisissez le nom du nouveau builder par exemple js and css minifier,
dans l'onglet Main on ajoute le path du script minifier.(sh|bat) dans le champ Location
${project_loc}/build/minifier.sh
dans le champ Working Directory
${project_loc}/build
dans le champ Arguments
${resource_loc}

puis dans l'onglet Refresh cocher la case Refresh resources upon completion. et sélectionner The selected resource

dans l'onglet Build Options cocher les cases After a "Clean", During manual builds, During auto builds et Specify working set of relevant resources puis clicker sur [Specify Resources...] pour sélectionner les répertoires et fichiers a prendre en compte.

Utilisation


je par du principe que le projet est une application Zend Framework MVC

donc dans le dossier /public/scripts et public/styles,
vous devais avoir les fichiers source des js et css sous cette forme {filename}.src.js et {filename}.src.css le script minifier vas créer les fichiers minimiser sous le même non {filename}.js et {filename}.css

à chaque enregistrement de fichier css ou js le script vas minimiser le fichier.

exemple:
fichier source : jquery.src.js
fichier minimiser : jquery.js

Remplacez {version} avec la version de yuicompressor qui a été téléchargé.
Remplacez {filename} par le nom de fichier js ou css.

source