web-dev-qa-db-ja.com

Visual Studioは選択範囲を引用符で囲みますか?

選択したテキストブロックを引用符で囲む方法はありますか? Visual Studioで、拡張機能やプラグインが見つかりませんでした。簡単な方法を探しています。その機能を追加する方法はありますか?

13
Jesse

「サラウンドあり」オプションは、ReSharperがなくてもVisualStudioで使用できます。引用符で囲むオプションは含まれていません。ただし、カスタムラッパーを使用してスニペットを拡張することは可能です。また、二重引用符で囲みます。それを行うには:

  1. Fileをクリックし、次にNewをクリックして、ファイルタイプXMLを選択します。
  2. Fileメニューで、Saveをクリックします。
  3. _Save as_ボックスで、All Files (*.*)を選択します。
  4. _File name_ボックスに、_.snippet_ファイル名拡張子を付けたファイル名を入力します。
  5. Saveをクリックします。
  6. このコードをファイルに追加します。

コード

_<CodeSnippet Format="1.1.0" xmlns="http://schemas.Microsoft.com/VisualStudio/2005/CodeSnippet">
  <Header>
    <Title>doubleQuotes</Title>
    <Author>Microsoft Corporation</Author>
    <Shortcut>"</Shortcut>
    <Description>Wrap in double quotes</Description>
    <SnippetTypes>
      <SnippetType>Expansion</SnippetType>
      <SnippetType>SurroundsWith</SnippetType>
    </SnippetTypes>
  </Header>
  <Snippet>
    <Declarations>
      <Literal>
        <ID>selected</ID>
        <ToolTip>content</ToolTip>
        <Default>content</Default>
      </Literal>
    </Declarations>
    <Code Language="CSharp">"$selected$"</Code>
  </Snippet>
</CodeSnippet>
_

ファイルを保存します。

  1. Tools-> _Code Snippets Manager_を開きます。
  2. 言語セクションで「ビジュアルC#」を選択します。
  3. Importをクリックして、作成したスニペットを参照します。
  4. _My Code Snippets_を確認し、Finishをクリックしてから、OKをクリックします。

使用するには:テキストを選択->右クリック-> [サラウンドウィズ...]を選択->マイコードスニペット-> doubleQoutes

または、テキストを選択->ヒット CtrlK、 S ->マイコードスニペット-> doubleQoutes

このソリューションのアイデアは この回答 から得ました。ここで、作成者はカスタムhtmlタグでコードをラップする方法を示しています。

12
PiotrWolkowski

これはやり過ぎかもしれませんが、ReSharperは、テキストのブロックを囲むためのテンプレート化されたメカニズムを提供するSurround Withと呼ばれるユーティリティを提供します。見積もり用のテンプレートがすぐに使用できるようには見えませんが、簡単に作成できるはずです。

enter image description here

プラグインの説明: https://www.jetbrains.com/resharper/help/Templates__Applying_Templates__Surrounding_Code_Fragments_with_Templates.html

4
Philip Pittle

次のコマンド(C#言語)をmy Visual Commander 拡張子とともに使用して、選択したテキストブロックを引用符で囲むことができます。

public class C : VisualCommanderExt.ICommand
{
    public void Run(EnvDTE80.DTE2 DTE, Microsoft.VisualStudio.Shell.Package package)
    {
        EnvDTE.TextSelection ts = DTE.ActiveDocument.Selection as EnvDTE.TextSelection;
        ts.Text = '"' + ts.Text + '"';
    }
}
1
Sergey Vlasov