<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" type="guide" style="task 2column" id="gedit-plugins-snippets" xml:lang="fr">
  <info>
    <link type="guide" xref="gedit-plugin-guide#gedit-default-plugins"/>
    <desc>Utiliser des fragments de code pour insérer rapidement les morceaux de texte fréquemment utilisés.</desc>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Vincent Untz</mal:name>
      <mal:email>vuntz@gnome.org</mal:email>
      <mal:years>2006.</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Jonathan Ernst</mal:name>
      <mal:email>jonathan@ernstfamily.ch</mal:email>
      <mal:years>2006.</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Philippe Lefevre</mal:name>
      <mal:email>ph.l@libertysurf.fr</mal:email>
      <mal:years>2006.</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Christophe Bliard</mal:name>
      <mal:email>christophe.bliard@trux.info</mal:email>
      <mal:years>2006.</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Claude Paroz</mal:name>
      <mal:email>claude@2xlibre.net</mal:email>
      <mal:years>2007-2011.</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Bruno Brouard</mal:name>
      <mal:email>annoa.b@gmail.com</mal:email>
      <mal:years>2011.</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Luc Pionchon</mal:name>
      <mal:email>pionchon.luc@gmail.com</mal:email>
      <mal:years>2011.</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Alain Lojewski</mal:name>
      <mal:email>allomervan@gmail.com</mal:email>
      <mal:years>2011-2014.</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Alexandre Franke</mal:name>
      <mal:email>alexandre.franke@gmail.com</mal:email>
      <mal:years>2013.</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Julien Hardelin</mal:name>
      <mal:email>jhardlin@orange.fr</mal:email>
      <mal:years>2013.</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Guillaume Bernard</mal:name>
      <mal:email>associations@guillaume-bernard.fr</mal:email>
      <mal:years>2018</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Charles Monzat</mal:name>
      <mal:email>charles.monzat@free.fr</mal:email>
      <mal:years>2020</mal:years>
    </mal:credit>
  </info>

  <title>Fragments de code</title>

  <p><app>Fragments de code</app> permet une insertion aisée de morceaux de texte fréquemment utilisés dans vos fichiers. Par exemple, un fragment de code HTML pour l’étiquette <code>&lt;img&gt;</code> insère les parties ouvrante et fermante de l’étiquette mais aussi les emplacements fixés où vous pouvez saisir les attributs de l’image. Cela peut accélérer et vous faciliter l’écriture du code.</p>

  <section id="enable-snippets">
    <title>Activation du greffon Fragments de code</title>

    <p>Pour activer le greffon <gui>Fragments de code</gui> :</p>

    <steps>
      <item>
        <p>Choisissez <guiseq><gui style="menu">gedit</gui><gui style="menuitem">Préférences</gui><gui style="tab">Greffons</gui></guiseq>.</p>
      </item>
      <item>
        <p>Sélectionnez <gui style="menuitem">Fragments de code</gui> pour activer le greffon.</p>
      </item>
    </steps>
  </section>

  <section id="browse-snippets">
    <title>Parcourir les fragments de code</title>

    <p>Pour parcourir les fragments de code disponibles :</p>
    <steps>
      <item>
        <p>Choisissez <guiseq><gui style="menu">Outils</gui><gui style="menuitem">Gestion des fragments de code</gui></guiseq>.</p>
        <note style="important">
          <p>Assurez-vous que la syntaxe est correctement configurée. La barre d’état en bas de la fenêtre <app>gedit</app> affiche le paramétrage actuel de langage. Ce paramétrage est ce qui permet à gedit d’insérer les fragments de code corrects. <app>Gedit</app> devrait normalement détecter le langage ou la syntaxe du fichier que vous êtes en train d’utiliser, mais parfois il est nécessaire de le définir.</p>
          <figure>
            <desc>Dans cet exemple, le langage est défini à HTML.</desc>
            <media type="image" mime="image/png" src="figures/gedit-html-snippet.png"/>
        </figure>
        </note>
      </item>
      <item>
        <p>Parcourez les fragments de code disponibles pour votre langage ou votre syntaxe.</p>
      </item>
    </steps>
  </section>

  <section id="using-snippets">
    <title>Utilisation des fragments de code</title>

    <p>Pour insérer un fragment de code dans le document actuel :</p>

    <steps>
      <item>
        <p>Saisissez le nom du fragment de code voulu n’importe où dans le document actuel.</p>
      </item>
      <item>
        <p>Appuyez sur la touche <key>Tab</key> pour insérer le fragment de code associé au nom que vous avez saisi.</p>
      </item>
    </steps>
  </section>

    <section id="example-insert-snippet">
    <title>Exemple d’utilisation de fragment de code</title>

    <p>Par exemple, si vous paramétrez la syntaxe à <em>HTML</em>, saisissez <code>head</code> et appuyez sur la touche <key>Tab</key>. Le texte devrait s’être autocomplété en un fragment de code tel que :</p>

    <code>
      &lt;head&gt;
      &lt;meta http-equiv="Content-type" content="text/html; charset=utf-8" /&gt;
      &lt;title&gt;Page Title&lt;/title&gt;
      &lt;/head&gt;
    </code>

  </section>

  <section id="adding-snippets">
    <title>Ajout de fragments de code</title>

    <p>Vous pouvez ajouter d’autres fragments de code fonctionnant soit globalement (c’est-à-dire indépendamment du langage), soit dans une syntaxe particulière.</p>

    <steps>
      <item>
        <p>Choisissez <guiseq style="menu"><gui style="menuitem">Outils</gui><gui style="menuitem">Gestion des fragments de code</gui></guiseq>.</p>
      </item>
      <item>
        <p>Dans le panneau latéral de <gui>Gestion des fragments de code</gui>, choisissez la syntaxe voulue et cliquez sur le bouton « + » pour dérouler la liste des fragments de code existants concernant la syntaxe choisie.</p>
        <note style="tip">
          <p>Pour ajouter un fragment de code fonctionnant globalement (c’est à dire sans qu’aucune syntaxe ou aucun langage n’ait été défini pour le document), choisissez <gui>Global</gui> dans le panneau latéral de <gui>Gestion des fragments de code</gui>.</p>
        </note>
      </item>
      <item>
        <p>Pour ajouter un nouveau fragment de code, cliquez sur l’icône « plus » dans le panneau latéral de <gui>Gestion des fragments de code</gui>.</p>
      </item>
      <item>
        <p>Saisissez un nom pour le nouveau fragment de code. Ce nom peut être différent du contenu du fragment de code.</p>
      </item>
      <item>
        <p>Dans la rubrique <gui style="group">Activation</gui>, vous devez saisir un terme dans la zone de texte <gui style="input">Mot déclencheur</gui>. Vous utiliserez ce terme pour insérer votre fragment de code.</p>
        <note style="tip">
          <p>Si vous souhaitez insérer un fragment de code avec un raccourci clavier, cliquez sur la zone de texte <gui style="input">Touche de raccourci</gui> et appuyez sur la combinaison de touche voulue. Après pression puis relâchement des touches, le raccourci clavier est défini.</p>
        </note>
      </item>
      <item>
        <p>Dans la zone de texte <gui style="input">Édition</gui>, saisissez le texte du fragment de code. Vous pouvez utiliser <code>${n}</code> pour indiquer les variables, où <em>n</em> est à remplacer par un nombre représentant l’ordre numérique des variables incluses.</p>
      </item>
    </steps>

  </section>

  <section id="example-add-snippet">
    <title>Exemple d’un nouveau fragment de code</title>

    <p>Supposons que vous ayez créé un fragment de code avec le terme <var>greetings</var> dans <gui style="input">Mot déclencheur</gui>. La zone de texte <gui style="input">Édition</gui> contient :</p>

    <code>
      &lt;greetings&gt;Hello ${1:wonderful}${2:amazing} world!
      &lt;/greetings&gt;
    </code>

    <p>Vous pouvez insérer ce fragment de code en saisissant <var>greetings</var> dans le document et en appuyant sur la touche <key>Tab</key>. Le texte du fragment de code suivant est alors inséré :</p>

    <code>
      &lt;greetings&gt;Hello wonderfulamazing world!&lt;/greetings&gt;
    </code>

    <p>Les mots « wonderful » et « amazing » peuvent être retenus ou supprimés selon votre choix d’utilisation. Pour ce faire, appuyez sur la touche <key>Tab</key> pour choisir entre « wonderful » et « amazing » et appuyez sur <key>Suppr</key> pour supprimer l’option à rejeter.</p>
  </section>

  <!--TODO: <section id="modifying-snippets">
    <title>Modifying Existing Snippets</title>

  </section>-->
</page>
