Extraits de codeCode snippets

Les extraits de code, souvent appelés modèles de code , sont pratiques pour une programmation efficace, car ils permettent l’insertion et la modification de blocs de code pré-écrits.Code snippets, often referred to as code templates , are useful for efficient programming as they allow the insertion and editing of pre-written blocks of code. L’utilisation d’extraits de code peut être pratique pour ajouter rapidement des modèles courants, ou même pour apprendre de nouveaux modèles quand vous, en tant que développeur, n’êtes pas sûr de la syntaxe.Using code snippets can be convenient for quickly adding common patterns, or even for learning new patterns when as the developer you are unsure of syntax. Des modèles sont fournis pour C#, F#, HTML, XML, Python et Razor.There are templates provided for C#, F#, HTML, XML, Python, and Razor.

Cette section explique comment créer, insérer et utiliser des extraits dans du code.This section explains how to create, insert, and use snippets in code.

Insertion d’un extrait de codeInserting a snippet

Il existe différentes façons d’ajouter des extraits de code, dont certaines sont décrites ci-dessous :There are some different ways to add code snippets, some of which are described below:

  • Tabulation : – commencez à taper le nom du modèle, sélectionnez-le dans la liste, puis appuyez sur Tab , Tab pour l’ajouter :Tab Expansion – Start typing the template name, select it from the list and press Tab , Tab to add it:

    Expansion de tabulation dans du code

  • Boîte à outils – Utilisez la fenêtre boîte à outils pour afficher une liste de tous les extraits de code.Toolbox – Use the Toolbox Window to display a list of all code snippets. Faites glisser n’importe quel modèle depuis la boîte à outils à la position correcte dans le code source :Drag any template from the toolbox into the correct position in the source code:

    Extraits de code dans la boîte à outilsCode snippets in Toolbox

  • Commande Insérer des modèles : – il n’existe actuellement pas de combinaison de touches par défaut définie pour l’insertion d’un modèle.Insert Templates command – There is currently no default key binding set for inserting a template. Pour en créer une, accédez à Visual Studio > Préférences > Combinaison de touches , puis recherchez template.To create one, browse to Visual Studio > Preferences > Key Bindings and search for template. Ceci permet d’ajouter la combinaison de touches souhaitée dans le champ Modifier la combinaison. Cliquez ensuite sur Appliquer  :This allows adding the desired key binding into the Edit Binding field, then click Apply :

    Commande Insérer un modèle

Création d’un modèleCreating a new template

Il existe de nombreux modèles dans différents langages que vous pouvez utiliser et modifier, mais vous pouvez aussi ajouter de nouveaux modèles en accédant à Visual Studio > Préférences > Éditeur de texte > Extraits de code :While there are many existing templates in a variety of languages that you can use and edit, new templates can also be added by navigating to Visual Studio > Preferences > Text Editor > Code Snippets :

Insérer un nouveau modèle

Appuyez sur le bouton Ajouter ou Modifier pour créer ou modifier des extraits de code.Press the Add or Edit buttons to create or edit snippets.

Mots clés dans les extraits de codeKeywords in code snippets

Une fois qu’un extrait de code est inséré dans l’éditeur, tous les mots clés définis sont mis en surbrillance et peuvent être modifiés en utilisant la tabulation pour naviguer entre eux.After a code snippet is inserted into the editor, any keywords defined are highlighted and can be edited by tabbing between them. Les mots clés se comportent comme une « variable » dans l’extrait de code et sont définis en plaçant un signe dollar $ avant et après le nom du mot clé.Keywords behave like a "variable" in the code snippet and are defined by placing a dollar-sign $ before and after the name of the keyword.

La fenêtre Modifier un modèle est illustrée ci-dessous, avec la modification de l’extrait de code prop intégré.The Edit template window is shown below, editing the built-in prop snippet. L’extrait de code contient deux mots clés – $type$ $name$ – qui peuvent avoir des propriétés supplémentaires définies (par exemple, une valeur par défaut et une info-bulle) sur le côté droit de la fenêtre :The snippet contains two keywords – $type$ and $name$ – which can have further properties set (such as a default value and tooltip) on the right side of the window:

Fenêtre Modifier un modèle

Les champs suivants sont utilisés pour définir un extrait de code :The following fields are used to define a snippet:

  • Raccourci – Le texte entré par l’utilisateur pour insérer l’extrait de code.Shortcut – The text the user types to insert the snippet.
  • Groupe – Les extraits de code sont regroupés dans le menu de contenu de l’extrait de code, à l’aide de cette valeur.Group – Snippets are grouped together in the snippet content menu, using this value.
  • Description – Explication de l’objectif de l’extrait de code.Description – Explanation of the snippet's purpose.
  • Mime – Contrôle dans quels types de fichiers l’extrait de code est disponible.Mime – Controls what file types the snippet is available in.
  • Est un modèle extensible – Vérifiez que cette option est activée afin que l’extrait de code puisse être inséré au niveau du curseur en tapant le raccourci.Is expandable template – Ensure this is checked so that the snippet can be inserted at the cursor by typing the shortcut.
  • Est entouré du modèle – Cochez cette option pour répertorier ce raccourci dans le menu de contenu Entourer de... dans l’éditeur.Is surround with template – Check this option to list this shortcut in the Surround with... content menu in the editor.
  • Texte du modèle – L’extrait de code réel qui sera inséré dans l’éditeur.Template text – The actual snippet that will be inserted into the editor. Les espaces réservés de mots clés peuvent être définis en entourant un jeton de signes dollar, par exemple.Keyword placeholders can be defined by surrounding a token with dollar signs eg. $type$.$type$.
  • Panneau de propriété de mot clé – Sur le côté droit de la fenêtre, utilisez la liste déroulante en haut pour choisir un mot clé (par exemple, type) et modifier des propriétés comme la valeur par défaut et l’info-bulle.Keyword property panel – On the right-side of the window, use the drop-down list at the top to choose a keyword (eg type) and edit properties like default value and tooltip.

Utilisation de mots clés dans l’éditeurUsing keywords in the editor

Pour utiliser un extrait de code avec des mots clés, comme celui défini ci-dessus, tapez le raccourci et appuyez sur Tab à deux reprises, et le contenu de l’extrait de code est inséré au niveau du curseur :To use a snippet with keywords, such as the one defined above, type the shortcut and press Tab twice, and the snippet contents will be inserted at the cursor:

Extrait de code inséré montrant les mots clés

Appuyez sur la touche Tab pour vous déplacer entre object et MyProperty afin de personnaliser l’extrait de code pour votre classe.Press the Tab key to move between object and MyProperty to customize the snippet for your class.

Un mot clé peut être répété dans un extrait de code, comme dans cet exemple for, où le mot clé $i$ apparaît 3 fois :A keyword can be repeated in a snippet, such as this for example, notice the $i$ keyword appears 3 times:

Modèle d’extrait de code avec des mots clés répétés

Dans l’éditeur, la touche Tab permet de basculer entre le premier i et max.When used in the editor, the Tab key will switch between the first i and max. En cas de refrappe de i avec un autre nom de variable, les trois instances sont mises à jour :If you overtype the i with a different variable name, all three instances will be updated:

Extrait de code inséré montrant des mots clés multiples

Mots clés réservésReserved keywords

Il existe deux mots clés réservés que vous pouvez utiliser dans un extrait de code :There are two reserved keywords that you can use in a snippet:

  • $selected$ – Si l’option Est entouré du modèle est activée dans l’extrait de code, ce mot clé sera remplacé par le texte qui a été mis en surbrillance dans l’éditeur lorsque l’extrait de code a été choisi.$selected$ – If the snippet has Is surround with template checked, this keyword will be replaced by the text that was highlighted in the editor when the snippet was chosen.
  • $end$–Lorsque l’utilisateur a fini de modifier les mots clés dans un extrait de code, le curseur est placé à l’emplacement du $end$ mot clé.$end$ – When the user has finished editing the keywords in a snippet, the cursor will be placed at the location of the $end$ keyword.

L’extrait de code for dans la section précédente est un exemple de ces deux mots clés réservés.The for snippet in the previous section is an example of both these reserved keywords.

Voir aussiSee also