[Перевод] Фрагменты кода в Visual Studio 2010

четверг, 24 июня 2010, Alexander Honcharuk

Visual Studio позволяет разработчикам сохранить фрагменты кода, которые могут использоватся позже. Это экономит время от перепечатывания кусков кода, которые часто используются. Я также вижу это очень полезно тогда, когда надо показать во время презентации код. Вместо того, чтобы все печатать, я считаю, что гораздо проще просто добавить код, используя фрагменты кода.

VS 2010 имеет улучшеный функционал, и она упрощает создание фрагментов кода. В ней есть два типа фрагментов:

  • Расширяемые фрагменты - вставлены в позицию курсора
  • Обтекаемые фрагменты вокруг выделенного кода

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

Давайте попробуем создать расширяемый фрагмент try-catch-finally блок:

  • Вставте новый XML файл в проект и назовите его TryCatchFinally.snippet. Убедитесь, что имя файла заканчивается на  .snippet.
  • Щелкните правой кнопкой мыши в окне редактора и выберите  Insert Snippet->Snippet. Так создается основной фрагмент XML шаблона, как показано ниже:


 


  title
  author
  shortcut
  description
  
   SurroundsWith
   Expansion
  

 

 
  
   
    name
    value
   

  

  
   
   $name$
   $selected$ $end$]]>
  

 

Как видите, по умолчанию, шаблон содержит оба типа фрагмента. Поскольку я создаю расширяемый фрагмент, то надо избавится от тега SurroundsWith.

Поменяйте  title на "Try Catch Finally", shortcut на "trycf" и description на "Adds a try-catch-finally block".

Тег Literal тег позволяет определить редактируемые значения, которые есть в фрагменте. В фрагменте try-catch-finally, мы хотим позволить пользователю изменять тип исключения которое будет ловится. ID теги это имена редактируемых значений, измените его на "ExceptionName". Тег Default определяет значение по умолчанию для нашего редактируемого поля. Я хочу ловить все исключения, то поменяйте значение тега "Default" на "Exception".

И, наконец, секция кода содержит то, что будет добавлено, когда фрагмент будет вставлен. Измените язык на "CSharp", а тело на следующее:

  
   try
{

}
catch($ExceptionName$)
{

}
finally
{

}
   ]]>
  

Окончательный вариант файла TryCatchFinally.snippet показано ниже. Более подробную информацию о схеме XML, смотрите на MSDN code snippets Schema Reference.


       xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
 


  Try Catch Finally
  umair
  trycf
  Adds a try-catch-finally block
  
   Expansion
  

 

 
  
   
    ExceptionName
    Exception
   

  

  
   try
{

}
catch($ExceptionName$)
{

}
finally
{

}
   ]]>
  

 

Загрузка фрагментов в Visual Studio

Есть два способа вставить фрагмент выше в Visual Studio.

Наиболее простым способом является перемещение .snippet файлов в VS 2010 папку Code Snippets. Путь по умолчанию такой - C:\Users\\Documents\Visual Studio 2010\Code Snippets\. Эта папка имеет подпапки, имена которых зависят от языка, для которого вы делаете фрагмент кода. Для моего примера, фрагмент кода подходит для Visual C#. Как только вы туда его положите, VS 2010 автоматически его подхватит без перезагрузки.

Второй способ заключается в импортировании .snippet файла в Visual Studio.

  • В Visual studio идите в меню Tools->Code Snippets Manager (Ctrl+K,Ctrl+B). Так вызовится Snippets Manager.
  • Нажмите кнопку Import и перейдите в путь, где был сохранен .snippet файл и выберите его.
  • Нажмите OK.

Использование фрагментов кода

Введите имя фрагмента и нажмите Tab для появления выпадающего меню

Вы также можете нажать Ctrl+K и Ctrl+X для вызова меню "Insert Snippet", как показано ниже

Мы можем перейти в My Code Snippets и выбрать TryCatchFinally, что мы только что добавили:

Источник

Компании из статьи


Microsoft Украина


Сайт:
http://www.microsoft.com/ukr/ua/

Microsoft Украина Украинское подразделение компании Microsoft.

Ищите нас в интернетах!

Комментарии

Свежие вакансии