【发布时间】:2011-02-16 20:38:31
【问题描述】:
我正在用本机 C++(不是 C++/CLR)编写代码。我知道在 sn-p 管理器和 snipper 选择器接口方面没有对 C++ 的内置支持,但是我发现了一个名为“snippy”的实用程序,据说它可以生成 C++ sn-ps。这是程序生成的一个c++ sn-p:
<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>MySnippet</Title>
<Shortcut>MySnippet</Shortcut>
<Description>Just a test snippet</Description>
<Author>Me</Author>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal Editable="true">
<ID>literal1</ID>
<ToolTip>just a placeholder</ToolTip>
<Default>
</Default>
<Function>
</Function>
</Literal>
</Declarations>
<Code Language="cpp"><![CDATA[cout << "$literal1$" << std::endl;]]></Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>
如果 Visual C++ 支持 C++ sn-ps,即使容量有限,我如何将它们添加到我的环境中,有什么限制?我所需要的只是支持基本扩展 sn-ps,我可以通过键入快捷方式并点击 tab 来调用它,它支持我可以通过 tab 浏览的基本文字(基本上,如果它支持上面的 sn-p,我很好) .如果无法做到这一点,Visual Studio 是否有任何免费的附加组件或扩展支持 C++ 的 sn-ps?我同时使用 Visual Studio 2010 和 2008,但我现在主要在 2010 年编写代码。
【问题讨论】:
-
不是骗子。这个问题专门针对 Visual Studio Snippets 功能,而不是一般的 sn-ps。
-
简短回答:不,无论如何。 VS2010 和更早版本将无法识别 C++ sn-ps,并且不会将任何 sn-ps 加载到 C++ 文件中。我尝试使用很棒的小Snippy 工具创建一个 C++ sn-p,它可以创建 sn-p 格式的 XML。不幸的是,VS2010 只允许您使用与您正在编辑的源文件的语言相对应的 sn-ps,因此 C++ sn-ps 虽然有效,但在 VS2010 中被忽略了。微软在 2012 年之前的 Visual Studio 中没有包含足够的 C++ 支持,这真的很奇怪——几乎就像他们希望这种语言消失一样!
标签: c++ visual-studio code-snippets