【问题标题】:How to insert a code snippet from a visual studio extension如何从 Visual Studio 扩展中插入代码片段
【发布时间】:2021-08-09 12:22:48
【问题描述】:

我正在为我们的小组编写一个扩展,它创建了一些文件夹和 .cshtml 文件。这个扩展还将添加几十个代码 sn-ps。我真的很想在创建文件时将一些代码 sn-ps 添加到文件中,因此如果用户更改了他们的 sn-p,它也会在生成的代码中发生变化。有什么方法可以从扩展访问/插入代码 sn-ps?

【问题讨论】:

  • 您的问题解决了吗?

标签: c# razor code-snippets visual-studio-extensions


【解决方案1】:

代码sn-p通常在开发/编写代码时添加。看起来您想自动执行此过程,例如新创建/插入的文件已经包含相关代码。而且您似乎还想让 sn-p 可变。

我不确定您的要求是与项目模板更相关还是更复杂的 Visual Studio 扩展。我可以分享一个简单的示例,介绍如何将普通代码 sn-p 从普通的 VS 扩展插入到开发的项目/文件中,但它是手动的。所以也许这不是你想要的,但我希望这能给你一些参考一点帮助

示例

1). 安装相关的 VS SDK,以及创建 Visual Studio Extension 项目的工作量。在 VS 中创建一个 VSIX 项目。

2). 在解决方案资源管理器中右键单击项目并添加一个新文件夹(命名为例如 Snippets),然后添加一个名为 My snippets 的子文件夹(您可以添加其他子文件夹分类),在这个子文件夹中添加一些.snippet 文件。

3). 编辑.snippet 文件并在其中添加一些相关的XML 代码。参考本文档:Snippet template

4). 新建一个名为XXXX.pkgdef的文件并保存在工程根目录下,编辑并添加相关代码进行注册。例如(对于 C#)

[$RootKey$\Languages\CodeExpansions\CSharp\Paths]
"MySnippets"="$PackageFolder$\Snippets\XXXXXXXX"

5). 右击source.extension.vsixmanaifest文件> View Designer > Asserts > 如果有源,选择它并点击Edit > 选择相关的东西:

6).(可选)编辑source.extension.vsixmanaifest文件>元数据填写你要设置的相关信息,如DescriptionLicenseTags… p>

7). 按 F5 进行调试,将启动 VS 的 Experimental 实例,检查那里的代码 sn-p 功能。

相关文档线程/博客:Shipping Visual Studio snippets in an extension

【讨论】:

    猜你喜欢
    • 2011-12-30
    • 2022-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-07
    • 1970-01-01
    相关资源
    最近更新 更多