Passo a passo: criar um snippet de código no Visual Studio
Os snippets de código são partes de código pré-criadas que estão prontas para serem inseridas no seu aplicativo. Você pode aumentar a produtividade e confiabilidade usando snippets de código para reduzir o tempo gasto digitando código repetitivo ou procurando exemplos.
É possível criar seus próprios snippets de código e adicioná-los aos snippets de código que o Visual Studio já contém. Este artigo orienta você sobre como criar um snippet de código em apenas algumas etapas. Você cria um arquivo XML, preenche os elementos apropriados e adiciona seu código ao arquivo. Opcionalmente, você pode usar parâmetros de substituição e referências de projeto. Em seguida, importe o trecho para a instalação do Visual Studio.
Para criar um snippet de código
Abra o Visual Studio e selecione Continuar sem código na tela Iniciar.
Na barra de menus, selecione Arquivo>Novo Arquivo ou digite Ctrl+N.
Na caixa de diálogo Novo Arquivo, selecione Arquivo XML e Abrir.
Cole o seguinte modelo básico de snippet a seguir no editor de código.
<?xml version="1.0" encoding="utf-8"?> <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> <CodeSnippet Format="1.0.0"> <Header> <Title></Title> </Header> <Snippet> <Code Language=""> <![CDATA[]]> </Code> </Snippet> </CodeSnippet> </CodeSnippets>
Insira o título Raiz Quadrada no elemento
Title
do snippet.No atributo Linguagem do elemento
Code
, preencha CSharp para um snippet C# ou VB para o Visual Basic.Dica
Para conferir todos os valores de linguagem disponíveis, consulte Atributos na Referência de esquema de snippets de código.
Adicione o seguinte snippet de código na seção
CDATA
dentro do elementoCode
.Para o C#:
<![CDATA[double root = Math.Sqrt(16);]]>
Para o Visual Basic:
<![CDATA[Dim root = Math.Sqrt(16)]]>
Observação
Não é possível especificar como formatar ou recuar as linhas de código na seção
CDATA
de um snippet de código. Após a inserção, o serviço de linguagem formata automaticamente o código inserido.Salve o snippet como SquareRoot.snippet em qualquer lugar.
Importar o snippet de código
Para importar o snippet para sua instalação do Visual Studio, selecione Ferramentas>Gerenciador de Snippets de Código ou pressione Ctrl+K, B.
No Gerenciador de Snippets de Código, selecione o botão Importar.
Navegue até o local do snippet de código, selecione-o e selecione Abrir.
Na caixa de diálogo Importar Snippet de Código, selecione a pasta Meus Snippets de Código no painel direito. Selecione Concluir e OK.
O snippet é copiado para uma das seguintes localizações, dependendo da linguagem de código:
%USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\Visual C#\My Code Snippets%USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\Visual Basic\My Code Snippets
%USERPROFILE%\Documents\Visual Studio 2019\Code Snippets\Visual C#\My Code Snippets%USERPROFILE%\Documents\Visual Studio 2019\Code Snippets\Visual Basic\My Code Snippets
Teste o snippet abrindo um projeto C# ou Visual Basic. Com um arquivo de código aberto no editor, execute uma das seguintes ações:
- Na barra de menus do Visual Studio, escolha Editar>IntelliSense>Inserir Snippet.
- Clique com o botão direito do mouse e escolha Snippet>Inserir Snippet no menu de contexto.
- Usando o teclado, pressione Ctrl+K, X.
Abra Meus Snippets de Código e clique duas vezes no snippet chamado Raiz Quadrada. O snippet de código é inserido no arquivo de código.
Campos de descrição e de atalho
O campo de descrição fornece mais informações sobre o snippet de código quando exibido no Gerenciador de Snippets de Código. O atalho é uma marcação que você pode digitar para inserir seu snippet.
Para editar o snippet, abra o arquivo de snippet de um dos seguintes locais, dependendo da linguagem do código:
- %USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\Visual C#\My Code Snippets/SquareRoot.snippet
- %USERPROFILE%\Documents\Visual Studio 2022\Code Snippets\Visual Basic\My Code Snippets/SquareRoot.snippet
- %USERPROFILE%\Documents\Visual Studio 2019\Code Snippets\Visual C#\My Code Snippets/SquareRoot.snippet
- %USERPROFILE%\Documents\Visual Studio 2019\Code Snippets\Visual Basic\My Code Snippets/SquareRoot.snippet
Dica
Como você está editando o arquivo no diretório em que o Visual Studio o colocou, você não precisa importá-lo novamente para o Visual Studio.
Adicione elementos
Author
,Description
eShortcut
ao elementoHeader
e preencha-os.Confirme se o elemento
Header
é semelhante ao seguinte exemplo e salve o arquivo.<Header> <Title>Square Root</Title> <Author>Myself</Author> <Description>Calculates the square root of 16.</Description> <Shortcut>sqrt</Shortcut> </Header>
Abra o Gerenciador de Snippets de Código do Visual Studio e selecione o snippet de código. No painel direito, observe que os campos Descrição, Autor e Atalho agora estão preenchidos.
Para testar o atalho, abra o projeto que você usou anteriormente, digite sqrt no editor e pressione Tab uma vez para o Visual Basic ou duas vezes para o C#. O snippet de código é inserido.
Parâmetros de substituição
Talvez seja interessante que o usuário substitua partes de um snippet de código. Por exemplo, o ideal é que o usuário substitua um nome de variável por um no projeto atual.
Você pode fornecer dois tipos de substituições: literais e objetos.
Use o elemento Literal para identificar um substituto para um código totalmente contido no snippet que pode ser personalizado depois de inserido no código. Por exemplo, uma cadeia de caracteres ou valor numérico.
Use o elemento Objeto para identificar um item que o snippet de código exige, mas que provavelmente é definido fora do snippet. Por exemplo, uma instância de objeto ou um controle.
Você pode usar um elemento Literal
no arquivo SquareRoot.snippet para ajudar os usuários a alterar facilmente o número cuja raiz quadrada será calculada.
No arquivo SquareRoot.snippet modifique o elemento
Snippet
da seguinte maneira:<Snippet> <Code Language="CSharp"> <![CDATA[double root = Math.Sqrt($Number$);]]> </Code> <Declarations> <Literal> <ID>Number</ID> <ToolTip>Enter the number you want the square root of.</ToolTip> <Default>16</Default> </Literal> </Declarations> </Snippet>
Observe que a substituição de literal recebe uma ID,
Number
. Você faz referência a essa ID no snippet de código colocando-a entre os caracteres$
da seguinte maneira:<![CDATA[double root = Math.Sqrt($Number$);]]>
Salve o arquivo de snippet.
Abra um projeto e insira o snippet.
O snippet de código é inserido e o literal editável é realçado para substituição. Focalize o parâmetro de substituição para ver a dica de ferramenta para o valor.
Dica
Se houver mais de um parâmetro substituível em um snippet, pressione Tab para ir de um parâmetro para o outro e alterar os valores.
Importar um namespace
Você pode usar um snippet de código para adicionar uma diretiva using
(C#) ou uma instrução Imports
(Visual Basic) incluindo o elemento Imports. Para projetos .NET Framework, você também pode adicionar uma referência ao projeto usando o elemento References.
O XML a seguir mostra um snippet de código que usa o método File.Exists
no namespace System.IO
e, portanto, define o elemento Imports para importar o namespace System.IO
.
<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>File Exists</Title>
<Shortcut>exists</Shortcut>
</Header>
<Snippet>
<Code Language="CSharp">
<![CDATA[var exists = File.Exists("C:\\Temp\\Notes.txt");]]>
</Code>
<Imports>
<Import>
<Namespace>System.IO</Namespace>
</Import>
</Imports>
</Snippet>
</CodeSnippet>
</CodeSnippets>
Conteúdo relacionado
- Para obter a referência de esquema XML de snippets de código do Visual Studio IntelliSense, consulte Referência de esquema de snippets de código.
- Para criar snippets no Visual Studio Code, consulte Criar seus próprios snippets.