eZVim 0.1

Je viens de mettre en ligne la toute première version du plugin eZVim sur la plateforme eZ Projects. vim.org est inaccessible au moment où j'écris ces lignes, mais je l'ajouterai aussi là bas dès que possible.

eZVim est un plugin Vim sous licence GPL qui ajoute à cet éditeur quelques fonctionnalités pour le développeur eZ Publish inspirées du plugin Smile eZ Plugin. Pour l'utiliser, il faut Vim 6 ou supérieur, avec le support des scripts en python. Sous Ubuntu et Debian, il suffit d'installer le paquet vim-python.

Classes View

Une barre verticale, le Classes View, permet de voir rapidement, les groupes de classes, les classes et leurs attributs. Cette barre affiche les informations les plus pertinentes (identifiant numérique, identifiant, classe, datatype,…). Les attributs obligatoires sont mis en valeur et préfixés par le signe +. Plusieurs raccourcis sont utilisables dans cette barre :

  • + ouvre l'élément courant
  • - ferme l'élément courant
  • * ouvre tous les éléments
  • = ferme tous les éléments
  • d ouvre le moteur de recherche sur ez.no pour le datatype de l'attribut sur la ligne courante
  • v permet de visualiser le groupe ou la classe sur la ligne courante.
  • e permet d'éditer le groupe ou la classe sur la ligne courante.

Cette fonctionnalités nécessite l'installation de l'extension eZ Publish SmileClasses disponible sur le site du plugin Smile eZ Plugin.

Abbréviations Vim

Les abbréviations Vim permettent de taper quelques lettres et l'éditeur les remplace automatiquement par la séquence définie. Par exemple, en tapant ezfcls (Fetch Content List Sort) suivi d'un espace, Vim va automagiquement remplacer cette séquence par :

fetch(content, list, hash('parent_node_id', __ ,
           'class_filter_type', include,
           'class_filter_array', array( __ ),
           'sort_by', array( __ ),
           'offset', $view_paremeters.offset,
           'limit', __ ))

Les éléments à complèter par le développeur sont remplacés par la chaîne " __ " qui est mise en valeur par l'éditeur. Chaque paramètre est sur une ligne, il est ainsi extrêmement simple de supprimer les lignes qui seraient superflues ou de rajouter des éléments moins courants (limitation, main_node_only,…).

Abbréviation ezfcls

A venir

D'autres fonctionnalités sont à venir, en particulier :

  • Une coloration syntaxique spécifique pour les templates eZ Publish
  • La validation syntaxique des templates dans Vim
  • Custom operators view qui, à la manière du Classes View, affiche les extensions fournissant des opérateurs ainsi que les prototypes de ces opérateurs.