Pascal Martin a commencé il y a peu à collecter divers trucs et astuces d'utilisation d'Eclipse[1].

Il est une fonctionnalité très pratique, mais que j'utilise trop peu : les modèles de code (template). Je les utilise peu par méconnaissance, et par flemme de les adapter à mes besoins. Mais parfois la flemme de faire un copier-coller est encore plus forte, et je prend la peine de créer un modèle pour une portion de code que j'utilise régulièrement. C'est simple, pratique, et fonctionne à l'identique que vous utilisiez PDT ou PHPEclipse.

Pour accéder aux modèles : Window / Preference / PHP / Editor / Templates avec PDT ou Window / Preferences / PHPEclipse / PHP / Template avec PHPEclipse.

Un modèle se compose d'un nom, correspondant à la chaîne à taper pour l'insérer, d'un contexte (html, php ou phpdoc) et du modèle lui-même. Dans ce modèle vous pouvez utiliser des variables, soit prédéfinies (par exemple le nom du fichier courant, la date...), soit que vous renseignerez.

Un exemple étant plus parlant, voici un modèle de création de getter-setter:

   /**
    * Get ${comment}
    *
    * @return ${type}
    */
   public function get${Var}() {
       return $$this->${var};
   }
   /**
    * Set ${comment}
    *
    * @param ${type} ${var} ${comment}
    *
    * @return ${class} this
    */
   public function set${Var}($$${var}) {
       $$this->${var} = $$${var};
       return $$this;
   }

Les ${toto} correspondent à des variables, $$ est une variable prédéfinie pour insérer un dollar.

Pour appeler ce modèle, saisissez son nom et déclenchez l'assistant de contenu (généralement Ctrl+Espace). Un formulaire est alors inséré, dans lequel vous saisissez les différentes variables. On passe d'un champ à un autre via la touche tab. Dans l'exemple ci-dessus, le curseur va être positionné sur ${comment}. Une fois saisi, la variable sera remplacée dans tout le modèle.

Un des avantages des modèles est de simplifier le respect de normes de programmation. Si au sein d'une équipe tout le monde utilise les mêmes templates pour créer une nouvelle classe par exemple, avec tous les PHPDoc qui vont bien, la présentation du code sera plus homogène. A chacun et chacune d'adapter à sa pratique.

Astuce supplémentaire : en complément à l'assistant de contenu, vous pouvez aussi utiliser la complétion de mots, accessible via Alt+/ (plusieurs fois de suite pour voir les différentes propositions) qui se base je crois sur l'ensemble des mots du fichier. Pratique lorsque l'assistant de contenu n'est pas dispo (dans un commentaire) ou à la ramasse (j'ai du mal avec PHPEclipse et les constantes de classe).

Notes

[1] n'hésitez pas à aller les enrichir