Создание собственных фрагментов кода

Оценить
(0 голоса)

Поскольку фрагменты кода хранятся в XML-файлах, то вы очень легко можете создать соб­ственные фрагменты кода. Главное— это понять XML-схему, которая определяет фраг­мент, а самый лучший способ сделать это — изучить XML-исходники некоторых фрагмен­тов кода, поставляемых вместе с интегрированной средой разработки.

Фрагменты кода хранятся по языкам в инсталляционном каталоге Visual Studio. Например, фрагменты кода для Visual Basic можно найти (по умолчанию) в каталогах C:\Program Files\Microsoft Visual Studio 9.0\Vb\Snippets. Несмотря на' то, что файлы фрагментов кода — это XML, они имеют расширение snippet.

</Code>

</Snippet>

</CodeSnippet>

</CodeSnippets>

Основная структура этого объявления фрагмента кода описана в табл. 8.2. Более полная справочная информация по схеме имеется в системе помощи Visual Studio MSDN; она нахо­дится в Integrated Development Environment for Visual Studio | Reference | XML Schema References | Code Snippets Schema Reference.

Создание собственных фрагментов кода

Чтобы написать фрагмент кода, необходимо понять, как работают литералы и подстановка переменных. Предположим, что вам нужен фрагмент кода на языке С#, который пишет в коде простой комментарий о том, что данный класс был проверен и утвержден при эксперт­ной оценке программы. Иначе говоря, вам нужно нечто подобное:

// Code review of ContextToken.

// Reviewer: Lars Powers // Date: 1/1/2006 // Approval: Approved

В этом фрагменте вам нужно обрабатывать четыре литерала как переменные (они могут изменяться каждый раз, когда фрагмент используется): имя класса, имя проверяющего, дата и отметка об утверждении. Вы можете настроить их при помощи области объявлений при­мерно так:

<Declarations>

<Literal Editable="False">

<ID>classname</ID>

<ToolTip>Class name/type being reviewed</ToolTip>

<Function>ClassName()</Function>

<Default>ClassNameGoesHere</Default>

</Literal>

<Literal Editable="True">

<ID>reviewer</ID>

<ToolTip>Replace with the reviewer's name</ToolTip> <Default>ReviewerName</Default>

</Literal>

<Literal Editable="True">

<ID>currdate</ID>

<ToolTip>Replace with the review date</ToolTip> <Default>ReviewDate</Default>

</Literal>

<Literal Editable="True">

<ID>approva1</ID>

<ToolTip>Replace with Approved or Rejected</ToolTip> <Default>Approved</Default>

</Literal>

</Declarations>

Обратите внимание, что вы фактически вызываете функцию для заполнения имени класса во фрагменте. Функции есть только в языке C# (подмножество имеется также и в языке J#); они описаны в табл. 8.3. В остальных литералах подразумевается, что разработчик введет правильное значение вместо указателя места заполнения.

Вам следует также дать некоторую базовую информацию для заголовка фрагмента кода:

<Header>

<Title>review</Title>

<Shortcut>review</Shortcut>

<Description>Code review comment</Description>

<Author>L. Powers</Author>

<SnippetTypes>

<SnippetType>Expansion</SnippetType>

</SnippetTypes>

</Header>

<Snippet>

Теперь фрагмент кода синтаксически завершен. Несмотря на то, что этот фрагмент пишет в редакторе комментарии, такой же процесс и структура используются и для вставки в редак­тор кода. Если вы хотите написать фрагмент кода типа Surrounds With, то вам нужно изме­нить значение <SnippetType> на Surrounds With.

Теперь вам нужно сообщить Visual Studio о своем фрагменте кода.

Создание собственных фрагментов кода

Добавление фрагмента кода в Visual Studio
Фрагменты в панели инструментов
Парность скобок
Настройка технологии IntelliSense
Список задач

Добавить комментарий


Защитный код
Обновить

© 2017 www.visualstudios.ru. Все права защищены.