【问题标题】:Visual Studio wrap selection in quotes?Visual Studio 将选择用引号括起来?
【发布时间】:2020-05-12 22:40:31
【问题描述】:

有没有办法用引号包裹选定的文本块?在 Visual Studio 中,我还没有找到扩展或插件,我只是在寻找一种简单的方法来做到这一点。有没有办法添加该功能?

【问题讨论】:

    标签: visual-studio text-editor


    【解决方案1】:

    “Surround with”选项在 Visual Studio 中也可用,无需 ReSharper。它不包含用引号括起来的选项。但是可以使用自定义包装器扩展 sn-ps。还有双引号。为此:

    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. 在语言部分选择“Visual C#”。
    3. 点击Import 并浏览到您刚刚创建的sn-p。
    4. 勾选My Code Snippets,点击Finish,然后点击OK

    要使用它:选择文本 -> 右键单击​​ -> 选择“环绕...” -> 我的代码片段 -> doubleQoutes

    或者:选择文本 -> 点击 Ctrl + K, S -> 我的代码片段 -> doubleQoutes

    我从this answer 获得了这个解决方案的想法,作者在其中展示了如何在自定义 html 标记中包装代码。

    【讨论】:

    • 好的,谢谢,我会试试的。感谢您抽出宝贵时间回复。
    • 我试过了,但如果有什么不清楚的地方请给我留言。
    • 没问题,有没有办法像在 sublime text 或 webstorm 中那样触发 sn-p?例如,我选择一段文本,然后按 " 键,它将用引号括起来。我知道您可以将 emmet 用于 html。
    • 我认为最好的办法是选择文本,按 Ctrl + K、S(触发 Surround With...),然后开始输入命令的名称。
    • 因为您觉得它有帮助,所以我在回答中包含了我之前的评论。
    【解决方案2】:

    这可能有点矫枉过正,但 ReSharper 提供了一个名为 Surround With 的实用程序,它为围绕文本块提供了一种模板化机制。看起来他们没有开箱即用的报价模板,但您应该能够轻松创建一个:

    插件描述:https://www.jetbrains.com/resharper/help/Templates__Applying_Templates__Surrounding_Code_Fragments_with_Templates.html

    【讨论】:

      【解决方案3】:

      您可以使用以下命令(C# 语言)和我的 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 + '"';
          }
      }
      

      【讨论】:

        【解决方案4】:

        Windows:IDE Visual Studio 代码

        1. 选择要换行的文本,
        2. 按住 SHIFT 键 按 " 键 它将用双引号括起来。

          [此外,您还可以包装 { ]

        【讨论】:

        • 谢谢,@mathan 它确实适用于 VS Code(在 Mac M1 上)!!
        猜你喜欢
        • 1970-01-01
        • 2020-12-24
        • 2010-09-12
        • 2022-01-15
        • 1970-01-01
        • 2016-08-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多