Visual Studio for Mac のコード スニペット
重要
Visual Studio for Mac は、Microsoft の モダン ライフサイクル ポリシーに従って、2024 年 8 月 31 日に廃止される予定です。 引き続き Visual Studio for Mac を使用できますが、VS Code 用の新しい C# 開発キット拡張機能のプレビュー バージョンなど、Mac 上の開発者向けの他のいくつかのオプションがあります。
コード スニペット ("コード テンプレート" と呼ばれることがよくあります) を使うと、あらかじめ記述されているコード ブロックを挿入して編集できるので、効率的にプログラミングできます。 コード スニペットを使用すると、よく使うパターンを簡単に追加したり、開発者が構文をよく知らないときに新しいパターンを学習したりするのに便利です。 C#、F#、HTML、XML、Python、Razor のテンプレートが用意されています。
このセクションでは、スニペットを作成し、コードに挿入して使う方法について説明します。
スニペットの挿入
コード スニペットを追加するにはいくつかの方法があり、以下ではその一部を説明します。
タブ展開 – テンプレート名の入力を開始し、それを一覧から選んで、Tab キー、Tab キーを押して追加します。
ツールボックス – ツールボックス ウィンドウを使ってすべてのコード スニペットの一覧を表示します。 ツールボックスからソース コード内の正しい位置にテンプレートをドラッグします。
テンプレート挿入コマンド – 現在、テンプレートの挿入用に設定された既定のキー バインドはありません。 1 つ作成するには、Visual Studio > [ユーザー設定] > [キー バインディング] に移動して、
template
を検索します。 [バインディングの編集] フィールドに目的のキー バインドを追加して、[適用] をクリックします。
新しいテンプレートの作成
さまざまな言語の多くの既存テンプレートを使って編集できますが、Visual Studio > [ユーザー設定] > [テキスト エディター] > [コード スニペット] で新しいテンプレートを追加することもできます。
[追加] または [編集] ボタンを押して、スニペットを作成または編集します。
コード スニペット内のキーワード
コード スニペットをエディターに挿入すると、定義されているキーワードがすべて強調表示され、それらの間をタブ移動して編集できます。 キーワードは、コード スニペットにおける "変数" のように機能します。これはキーワードの名前の前後にドル記号 $
を置くことで定義されます。
組み込みの prop
スニペットを編集している [テンプレートの編集] ウィンドウを次に示します。 スニペットには、2 つのキーワード $type$
と $name$
が含まれていて、これにはウィンドウの右側でさらにプロパティを設定することもできます (既定値やヒントなど)。
スニペットを定義するために、次のフィールドを使います。
- [ショートカット] – スニペットを挿入するためにユーザーが入力するテキストです。
- [グループ] – スニペットは、この値を使って、スニペットのコンテンツ メニューでグループ化されます。
- [説明] – スニペットの目的を説明します。
- [Mime] – スニペットを使用できるファイルの種類を制御します。
- [拡張可能なテンプレート] – ショートカットを入力してカーソル位置にスニペットを挿入できるようにする場合は、確実にこれをオンにします。
- [テンプレートで囲まれている] – エディターの [ブロックの挿入] コンテンツ メニューでこのショートカットを一覧表示するには、このオプションをオンにします。
- [テンプレート テキスト] – エディターに挿入される実際のスニペットです。 キーワードのプレースホルダーは、トークンをドル記号で囲むことで定義できます。例:
$type$
. - キーワードのプロパティ パネル – ウィンドウの右側で、上部のドロップダウン リストを使ってキーワード (例:
type
) を選び、既定値やヒントなどのプロパティを編集します。
エディターでのキーワードの使用
上で定義したものなど、キーワードを含むスニペットを使うには、ショートカットを入力して Tab キーを 2 回押すと、スニペットの内容がカーソル位置に挿入されます。
Tab キーを押して object
と MyProperty
の間を移動し、ご自身のクラス用にスニペットをカスタマイズします。
この for
の例のように、キーワードはスニペット内で繰り返し使えます。$i$
キーワードが 3 回出現していることに注意してください。
エディター内で使う場合、Tab キーは最初の i
と max
の間で切り替わります。 異なる変数名で i
を上書きすると、3 つのインスタンスすべてが更新されます。
予約されているキーワード
スニペット内で使える予約キーワードが 2 つあります。
$selected$
– スニペットの [テンプレートで囲まれている] がオンになっている場合、このキーワードは、スニペットを選択したときにエディター内で強調表示されていたテキストで置き換えられます。$end$
– ユーザーがスニペット内のキーワードの編集を完了すると、$end$
キーワードの位置にカーソルが置かれます。
前のセクションにある for
スニペットは、これらの予約キーワード両方の例です。