独自のコードスニペットを追加する
コードスニペット便利ですね。
でも自分の好きなものを追加しないと真価を発揮できません。
ということで、独自のコードスニペットを追加する方法を見ていきます。
新しいファイルを任意の場所に作ります。
ファイルの拡張子は .snippet にします。
VisualStudio2017のチュートリアルにのっとり、下記のように記述します。
<?xml version="1.0" encoding="utf-8"?> <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> <CodeSnippet Format="1.0.0"> <Header> <Title>Hello World C#</Title> <Description>HelloWorld文字列</Description> <Shortcut>hello</Shortcut> </Header> <Snippet> <Code Language="CSharp"> <![CDATA[string str = "Hello, World!";]]> </Code> </Snippet> </CodeSnippet> </CodeSnippets>
各要素の説明は以下です。
Title | コードスニペットの表示名 |
Description | コードスニペットの説明 |
Shortcut | スニペットの挿入に使用するショートカットテキストを指定 |
CDATAの後ろの[]の中に表示したい文字列を入れます。
スニペットを追加するにはコードスニペットマネージャーを開いてインポートします。
[ツール] > [コード スニペット マネージャー]
二度目以降は同じファイルあるよと注意ダイアログが出るので上書きにします。
これで「hello」と打ちTab2回押すと「string str = "Hello, World!";」とコードが入力されます。
1ファイルに2つ以上入れたい場合にはCodeSnippet要素をまるっとコピーして必要な項目を書き換えます。
<?xml version="1.0" encoding="utf-8"?> <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> <CodeSnippet Format="1.0.0"> 省略 </CodeSnippet> <CodeSnippet Format="1.0.0"> <Header> <Title>一行summary</Title> <Description>一行にsummaryを書く</Description> <Shortcut>sm</Shortcut> </Header> <Snippet> <Code Language="CSharp"> <![CDATA[/// <summary></summary>]]> </Code> </Snippet> </CodeSnippet> </CodeSnippets>
追加した文字列は一行のsummaryを表示したいときに使うスニペットです。
スラッシュ3回押せば同じようなものは出せるのですが、変数名に3行も使いたくないので、「sm」Tab2回で打てるようにしてます。
コード規約レベルのものは登録しておくとかなり速く書けます。
何度も入力していて面倒だなと思った時がスニペット化するタイミングです。
スニペットに限らず楽に簡単にコードを作るのを考え続けるのは大事なことですね。
環境
VisualStudio Community 2017
(2019/02/11現在)