Écriture de Snipets

Table of Contents

  1. Documentation de XINX
  2. Sommaire
  3. Installation de XINX
    1. Installation de XINX à partir des sources
      1. Récupérer les sources
      2. Compilation
      3. Installation des prérequis sous MS/Windows (depuis la version 0.8.1)
    2. Installation à partir du binaire
      1. Sous windows
      2. Sous Gnu/Linux
  4. Démarrage rapide
    1. Présentation de l'interface
    2. Le menu fichier
    3. Le menu édition
    4. Le menu chercher
    5. Le menu signet
    6. Le menu projet
    7. Le menu fenêtre
    8. Le menu Outils
    9. Le menu Aide
  5. Le mode projet
    1. Création d'un projet
      1. Page 1 : Définition du projet
      2. Page 1 bis : Définition des propriétés spécifiques
      3. Page 2 : Définition des services
      4. Page 3 : Définition du gestionnaire de version
    2. Modification d'un projet
    3. Fermeture d'un projet
  6. La complétion sous XINX
    1. Fichier de donnée pour la complétion
    2. Editeur
  7. Spécifique
    1. Projet multi-préfixe
    2. Sauvegade
  8. Les Services Internet
    1. Configuration des services
    2. Éditer un flux
    3. Execution du Service
  9. Utilisation du gestionnaire de version
    1. Mise à jour globale
    2. Validation globale
    3. Opération locale
  10. Personnalisation de XINX
    1. Général
    2. Projet
    3. Révision
    4. Éditeur
    5. Police
    6. Syntaxe
    7. Présentation
    8. Snipet
    9. Outils
    10. Modules
  11. Liste des raccourcis disponibles dans XINX
    1. Fonctions de Navigation
    2. Fonctions d'édition XINX
    3. Gestion des signets
    4. Gestion des Webservices
    5. Fonctions d'édition classiques
    6. Fonctions de recherche
  12. Écriture de Plugins Pour XINX
    1. Préface
    2. Les bases
    3. Le plugin de gestion de version
      1. Partie gestionnaire de version
      2. Partie plugin
  13. Écriture de script pour XINX
    1. Présentation de ECMAScript
    2. Les objets
    3. Propriété de l'objet Global
    4. Etendre l'application
  14. Écriture de Snipets
    1. Configuration
      1. Boite de configuration
      2. Propriété du Snipet
      3. Script dans les snipets

XINX permet d'utiliser des Snipets pour aider aux développements. Les snipets sont des morceaux de code qui sont insérés dans le texte, soit en les appelant à partir d'un menu, soit en écrivant une clé suivie du raccourci Ctrl+Space.

Configuration

Boite de configuration

Les snipets se configurent dans la boite de dialogue de personnalisation de XINX.

Boide de dialogue de personalisation de XINX

Dans cette boite de dialogue, il est possible d'importer/exporter des Snipets depuis/vers un fichier XML. Cette fonctionnalités vous permet d'écrire vos propres Snipets et de les exporter dans un fichier, pour les transmettre à une autre personne ou pour les réimporter dans une nouvelle version.

Il est également possible d'ajouter, de supprimer ou de modifier des Snipets.

Propriété du Snipet

L'ajout et la modification se fait à l'aide de la boite de dialogue suivante :

Cette boite de dialogue permet de définir différentes informations :

  • Nom : Le nom que vous allez donner au Snipet
  • Image : Le chemin vers une image représentant le Snipet. Si le chemin commence par :/ il est interne à l'application.
  • Extension : L'extension correspondant au type de fichier. Elle est utilisée pour déterminer la coloration syntaxique à utiliser dans l'éditeur.
  • Clé du snipet : Cette clé utilisée permet d'appeler le snipet lors de la saisie dans l'éditeur. Par exemple si dans la clé le mot est sort alors, au moment de la saisie dans l'éditeur du mot sort suivi de Ctrl+Space.
  • Catégorie : La catégorie dans laquelle doit être classé le snipet.

Elle permet également de définir le texte à utiliser pour le snipet (le texte qui devra être inséré). Ce texte peut être parsemé de joker. Un joker est défini par le sigle % suivi d'un numéro. Le même joker peut être défini plusieurs fois.

Le code du snipet suivant demande deux jokers. XINX permet alors la saisie d'un nom pour chaque Joker. Le nom utilisé pour le Joker est utilisé lors de l'appel à celui-ci.

<xsl:call-template name="GnxSort">
        <xsl:with-param name="title">%1</xsl:with-param>
        <xsl:with-param name="sortkey_asc">%2</xsl:with-param>
        <xsl:with-param name="sortkey_desc">-%2</xsl:with-param>
</xsl:call-template>

Le code ci-dessus, avec comme Joker Mon titre et TITLE, deviendra alors :

<xsl:call-template name="GnxSort">
        <xsl:with-param name="title">Mon titre</xsl:with-param>
        <xsl:with-param name="sortkey_asc">TITLE</xsl:with-param>
        <xsl:with-param name="sortkey_desc">-TITLE</xsl:with-param>
</xsl:call-template>

Script dans les snipets

De plus il est possible d'insérer des morceaux de scripts dans le template afin de générer un template automatiquement. Les scripts sont entourés des balises <? et ?> ainsi que de la balise <?= et ?>.

La balise <?= récupère et affiche le résultat du script alors que la balise <? ne permet que définir des variables.

<?
var text, cinematique;
if( '%1' == '' ) {
  text = '';
  cinematique = 'propose(0);assimilate();';
} else {
  text = '<input type="hidden" name="sourceview" value="%1"/>\n';
  cinematique = '';
} 
?>
<?= text ?><input type="hidden" name="cinematic" value="<?= cinematique ?>%2"/>
<input type="hidden" name="entity" value="{$ENTITY}"/>
<input type="hidden" name="id" value="{$ID}"/>
<input type="hidden" name="frame" value="{$FRAME}"/>

Attachments