チュートリアル: コード スニペットを作成するWalkthrough: Creating a Code Snippet

コード スニペットは、わずかな手順で作成できます。You can create a code snippet with only a few steps. 必要な操作は、XML ファイルを作成し、適切な要素を指定して、コードを追加するだけです。All you need to do is create an XML file, fill in the appropriate elements, and add your code to it. コードには、参照や置換パラメーターを追加することもできます。You can also add references and replacement parameters to your code. Visual Studio インストールにスニペットを追加するには、コード スニペット マネージャー ([ツール][コード スニペット マネージャー...]) の [インポート] を使用します。You can add the snippet to your Visual Studio installation by using the Import button on the Code Snippets Manager (Tools, Code Snippets Manager...).

スニペット テンプレートSnippet Template

基本的なスニペット テンプレートを次に示します。The following is the basic snippet template:

<?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>

コード スニペットを作成するにはTo Create a Code Snippet

  1. Visual Studio で新しい XML ファイルを作成し、上に示したテンプレートを追加します。Create a new XML file in Visual Studio and add the template shown above.

  2. Title 要素にスニペットのタイトルを入力します。たとえば、"Hello World VB" と入力します。Fill in the title of the snippet, e.g. "Hello World VB", in the Title element.

  3. Code 要素の Languages 属性に、スニペットの言語を指定します。Fill in the language of the snippet in the Languages attribute of the Code element. この例では、"VB" を使用します。For this example, use "VB".

  4. Code 要素内の CDATA セクションにコードを追加します。次に例を示します。Add some code in the CDATA section inside the Code element, for example:

    <Code Language="VB">  
        <![CDATA[Console.WriteLine("Hello, World!")]]>  
    </Code>
    
  5. VBCodeSnippet.snippet としてスニペットを保存します。Save the snippet as VBCodeSnippet.snippet.

コード スニペットを Visual Studio に追加するにはTo Add a Code Snippet to Visual Studio

  1. コード スニペット マネージャーを使用すると、独自のスニペットを Visual Studio インストールに追加できます。You can add your own snippets to your Visual Studio installation by using the Code Snippets Manager. コード スニペット マネージャーを開きます ([ツール][コード スニペット マネージャー...])。Open the Code Snippets Manager (Tools, Code Snippets Manager...).

  2. [インポート] ボタンをクリックします。Click the Import button.

  3. 前の手順でコード スニペットを保存した場所に移動し、コード スニペットを選択して、[開く] をクリックします。Go to the location where you saved the code snippet in the previous procedure, select it, and click Open.

  4. [コード スニペットのインポート] ダイアログが開き、右ウィンドウの選択肢からスニペットを追加するように求められます。The Import Code Snippet dialog opens, asking you to choose where to add the snippet from the choices in the right pane. 選択肢の 1 つに [マイ コード スニペット] があります。One of the choices should be My Code Snippets. これを選択し、[完了][OK] の順にクリックします。Select it and click Finish, then OK.

  5. スニペットが次の場所にコピーされます。The snippet is copied to the following location:

    %USERPROFILE%\Documents\Visual Studio 2017\Code Snippets\Visual Basic\My Code Snippets%USERPROFILE%\Documents\Visual Studio 2017\Code Snippets\Visual Basic\My Code Snippets

  6. Visual Basic プロジェクトを開き、コード ファイルを開くことによって、スニペットをテストします。Test your snippet by opening a Visual Basic project and opening a code file. ファイル内でコンテキスト メニューで [スニペット][スニペットの挿入] の順に選択し、[マイ コード スニペット] をクリックします。In the file choose Snippets, Insert Snippet from the context menu, then My Code Snippets. [My Visual Basic Code Snippet] (マイ Visual Basic コード スニペット) という名前のスニペットが表示されます。You should see a snippet named My Visual Basic Code Snippet. これをダブルクリックします。Double-click it.

    Console.WriteLine("Hello, World!") はコード ファイルに挿入されます。Console.WriteLine("Hello, World!") is inserted in the code file.

Description フィールドと Shortcut フィールドの追加Adding Description and Shortcut Fields

  1. Description フィールドは、コード スニペット マネージャーに表示された際に、コード スニペットに関する詳しい情報を提供します。Description fields give more information about your code snippet when viewed in the Code Snippets Manager. ショートカットとは、スニペットを挿入するためにユーザーが入力できるタグです。The shortcut is a tag that users can type in order to insert your snippet. %USERPROFILE%\Documents\Visual Studio 2017\Code Snippets\Visual Basic\My Code Snippet\VBCodeSnippet.snippet ファイルを開くことで、追加したスニペットを編集します。Edit the snippet you have added by opening the file %USERPROFILE%\Documents\Visual Studio 2017\Code Snippets\Visual Basic\My Code Snippet\VBCodeSnippet.snippet.

  2. Author 要素と Description 要素を Header 要素に追加し、情報を入力します。Add Author and Description elements to the Header element, and fill them in.

  3. Header 要素は次のようになります。The Header element should look something like this:

    <Header>  
        <Title>Hello World VB</Title>  
        <Author>Myself</Author>  
        <Description>Says Hello to the world.</Description>  
    </Header>
    
  4. コード スニペット マネージャーを開き、コード スニペットを開きます。Open the Code Snippets Manager and select your code snippet. 右ペインで、Description フィールドと Author フィールドが指定されていることを確認します。In the right pane you should see that the Description and Author fields are now populated.

  5. ショートカットを追加するには、Author 要素および Description 要素と共に Shortcut 要素を追加します。To add a shortcut, add a Shortcut element alongside the Author and Description element:

    <Header>  
        <Title>Hello World VB</Title>  
        <Author>Myself</Author>  
        <Description>Says Hello to the world.</Description>  
        <Shortcut>hello</Shortcut>  
    </Header>
    
  6. スニペット ファイルを再度保存します。Save the snippet file again.

  7. ショートカットをテストするには、Visual Basic プロジェクトを開き、コード ファイルを開きます。To test the shortcut, open a Visual Basic project and open a code file. ファイルに「hello」と入力し、Tab キーを 2 回押します。Type hello in the file and press Tab twice.

    スニペット コードが挿入されます。The snippet code is inserted.

参照とインポートを追加するにはTo Add References and Imports

  1. References 要素を使用してプロジェクトに参照を追加し、Imports 要素を使用して Imports 宣言を追加できます。You can add a reference to a project by using the References element, and add an Imports declaration by using the Imports element. (これは C# でも動作します。)たとえば、コード例の Console.WriteLineMessageBox.Show に変更する場合、プロジェクトに System.Windows.Forms.dll アセンブリの追加が必要になる場合があります。(This works for C# as well.) For example, if you change Console.WriteLine in the code example to MessageBox.Show, you may need to add the System.Windows.Forms.dll assembly to the project.

  2. スニペットを開きます。Open your snippet.

  3. Snippet 要素の下に References 要素を追加します。Add the References element under the Snippet element:

    <References>  
        <Reference>  
            <Assembly>System.Windows.Forms.dll</Assembly>  
        </Reference>  
    </References>
    
  4. Snippet 要素の下に Imports 要素を追加します。Add the Imports element under the Snippet element:

    <Imports>  
        <Import>  
           <Namespace>System.Windows.Forms</Namespace>  
        </Import>  
    </Imports>
    
  5. CDATA セクションを次のように変更します。Change the CDATA section to the following:

    <![CDATA[MessageBox.Show("Hello, World!")]]>  
    
  6. スニペットを保存します。Save the snippet.

  7. Visual Basic プロジェクトを開き、スニペットを追加します。Open a Visual Basic project and add the snippet.

  8. コード ファイルの先頭で、次の Imports ステートメントを確認できます。You will see an Imports statement at the top of the code file:

    Imports System.Windows.Forms
    
  9. プロジェクトのプロパティを確認します。Look at the project's properties. References タブでには、System.Windows.Forms.dll への参照が含まれています。The References tab includes a reference to System.Windows.Forms.dll.

置換の追加Adding Replacements

  1. コード スニペットの一部をユーザーが置換できるように指定することができます。たとえば、変数を追加しておき、ユーザーが現在のプロジェクト内の変数に置換できるようにする場合などです。You may want parts of your code snippets to be replaced by the user, for example if you add a variable and want the user to replace the variable with one in the current project. 使用できる置換には、リテラル置換とオブジェクト置換の 2 種類があります。You can provide two types of replacements: literals and objects. リテラルは、いずれかの種類 (文字列リテラル、変数名、数値の文字列形式) の文字列です。Literals are strings of some type (string literals, variable names, or string representations of numeric values). オブジェクトは、文字列以外の型のインスタンスです。Objects are instances of some type other than a string. この手順では、リテラル置換およびオブジェクト置換を宣言し、これらの置換が参照されるようにコードを変更します。In this procedure you will declare a literal replacement and an object replacement, and change the code to reference these replacements.

  2. スニペットを開きます。Open your snippet.

  3. この例では、SQL 接続文字列を使用するため、Imports 要素と References 要素を変更して、適切な参照を追加する必要があります。This example uses a SQL connection string, so you need to change the Imports and References elements to add the appropriate references:

    <References>  
        <Reference>  
            <Assembly>System.Data.dll</Assembly>  
        </Reference>  
        <Reference>  
            <Assembly>System.Xml.dll</Assembly>  
        </Reference>  
    </References>  
    <Imports>  
        <Import>  
            <Namespace>System.Data</Namespace>  
        </Import>  
        <Import>  
            <Namespace>System.Data.SqlClient</Namespace>  
        </Import>  
    </Imports>
    
  4. SQL 接続文字列用のリテラル置換を宣言するには、Declarations 要素を Snippet 要素の下に追加し、その中に Literal 要素を追加します。さらにその中に、置換する ID、ツールヒント、および既定値を指定するためのサブ要素を追加します。To declare a literal replacement for the SQL connection string, add a Declarations element under the Snippet element, and in it add a Literal element with subelements for the ID, the tooltip, and the default value for the replacement:

    <Declarations>  
        <Literal>  
            <ID>SqlConnString</ID>  
            <ToolTip>Replace with a SQL connection string.</ToolTip>  
            <Default>"SQL connection string"</Default>  
        </Literal>  
    </Declarations>
    
  5. SQL 接続用のオブジェクト置換を宣言するには、Object 要素を Declarations 要素内に追加し、ID、オブジェクトの型、ツールヒント、および既定値を指定するためのサブ要素を追加します。To declare an object replacement for the SQL connection, add an Object element inside the Declarations element, and add sub-elements for the ID, the type of the object, the tooltip, and the default value. その結果、Declarations 要素は次のようになります。The resulting Declarations element should look like this:

    <Declarations>  
        <Literal>  
            <ID>SqlConnString</ID>  
            <ToolTip>Replace with a SQL connection string.</ToolTip>  
            <Default>"SQL connection string"</Default>  
        </Literal>  
        <Object>  
            <ID>SqlConnection</ID>  
            <Type>System.Data.SqlClient.SqlConnection</Type>  
            <ToolTip>Replace with a connection object in your application.</ToolTip>  
            <Default>dcConnection</Default>  
        </Object>  
    </Declarations>  
    
  6. Code セクションでは、置換項目を $ 記号で囲んで参照します (例: $replacement$)。In the code section, you reference the replacements with surrounding $ signs, for example $replacement$:

    <Code Language="VB" Kind="method body">  
        <![CDATA[Dim daCustomers As SqlDataAdapter  
            Dim selectCommand As SqlCommand  
    
            daCustomers = New SqlClient.SqlDataAdapter()  
            selectCommand = new SqlClient.SqlCommand($SqlConnString$)  
            daCustomers.SelectCommand = selectCommand  
            daCustomers.SelectCommand.Connection = $SqlConnection$]]>  
    </Code>  
    
  7. スニペットを保存します。Save the snippet.

  8. Visual Basic プロジェクトを開き、スニペットを追加します。Open a Visual Basic project and add the snippet.

  9. コードは次のようになります。置換項目 SQL connection stringdcConnection は明るいオレンジ色で強調表示されます。The code should look like the following, where the replacements SQL connection string and dcConnection are highlighted in light orange. 項目間を移動するには、Tab キーを選択します。Choose Tab to navigate from one to the other.

    Dim daCustomers As SqlDataAdapter  
    Dim selectCommand As SqlCommand  
    
    daCustomers = New SqlClient.SqlDataAdapter()  
    selectCommand = New SqlClient.SqlCommand("SQL connection string")  
    daCustomers.SelectCommand = selectCommand  
    daCustomers.SelectCommand.Connection = dcConnection
    

関連項目See Also

コード スニペット スキーマ リファレンスCode Snippets Schema Reference