代码片段是预先授权的代码片段,可以插入到应用程序中。 通过使用代码片段来减少键入重复代码或搜索示例所花费的时间,可以提高工作效率和可靠性。
本文提供对 Visual Studio IntelliSense 代码片段 XML 架构的引用。 可以使用架构创建自己的代码片段,并将其添加到 Visual Studio 已包含的代码片段。
Assembly 元素
指定代码段引用的程序集的名称。
Assembly 元素的文本值可以是程序集的友好文本名称(如 System.dll
),也可以是程序集的强名称(如 System,Version=1.0.0.1,Culture=neutral,PublicKeyToken=9b35aa323c18d4fb1
)。
<Assembly> AssemblyName </Assembly>
父元素 | 描述 |
---|---|
Reference 元素 | 包含有关代码段所需的程序集引用的信息。 |
需要一个文本值。 此文本指定代码段引用的程序集。
Author 元素
指定代码段作者的姓名。 代码片段管理器显示存储在代码片段的 Author
元素中的名称。
<Author> Code Snippet Author </Author>
父元素 | 描述 |
---|---|
Header 元素 | 包含有关代码段的常规信息。 |
需要一个文本值。 此文本指定代码段的作者。
代码元素
为短代码块提供一个容器。
关键字
两个保留字可在 Code
元素的文本中使用:$end$
和 $selected$
。 $end$
标记在插入代码段之后用于放置光标的位置。 $selected$
表示在调用代码段时要插入代码片段的选定文档文本。 例如,指定一个代码段,使其包括:
$selected$ is a great color.
如果用户调用代码片段时选择了单词 Blue
,则结果为:
Blue is a great color.
你不能在一个代码段中多次使用 $end$
或 $selected$
。 如果要这么做,只能识别第二个实例。 指定代码段,使其包括:
$selected$ is a great color. I love $selected$.
如果选择单词 Blue
,则结果为:
is a great color. I love Blue.
初始空间出现是因为存在空格和 $selected$
is
。
所有其他 $
关键字将在 <Literal>
和 <Object>
标记中自动定义。
以下代码显示元素的结构 Code
:
<Code Language="Language" Kind="method body/method decl/type decl/page/file/any" Delimiter="Delimiter"> Code to insert </Code>
需要一个文本值。 此文本指定在将此代码片段插入到代码文件中时可以使用的代码以及文本和对象。
特性
有三个属性可用于 Code
该元素:
语言。 指定代码片段语言的必需 属性。 该值必须是以下值之一:
值 | 说明 |
---|---|
VB | Visual Basic 代码片段。 |
CSharp | C# 代码片段。 |
CPP | C++ 代码片段。 |
XAML | XAML 代码片段。 |
XML | XML 代码片段。 |
JavaScript | JavaScript 代码片段。 |
TypeScript | TypeScript 代码片段。 |
SQL | SQL 代码片段。 |
HTML | HTML 代码片段。 |
Kind。 指定代码片段包含的代码类型的可选属性。 该值必须是以下值之一:
值 | 说明 |
---|---|
method body | 该代码片段是一个方法正文,因此必须插入方法声明。 |
method decl | 该代码片段是一种方法,因此必须插入到类或模块中。 |
type decl | 代码片段是一种类型,因此必须插入类、模块或命名空间中。 |
file | 该代码片段是完整的代码文件,可以单独插入代码文件或命名空间中。 |
any | 可以在任意位置插入代码片段。 此标记可用于上下文独立的代码段(例如注释)。 |
分隔符。 可选属性,用于指定用于描述代码中文本和对象的分隔符。 默认情况下,分隔符为 $
。
父元素
父元素 | 描述 |
---|---|
Snippet 元素 | 包含用于代码段的引用、导入、声明和代码。 |
CodeSnippet 元素
允许你指定一个标题和多个代码段,你可以将其插入 Visual Studio Code 文件中。
<CodeSnippet Format="x.x.x"> <Header>... </Header> <Snippet>... </Snippet> </CodeSnippet>
Attribute | 说明 |
---|---|
Format | 必需 属性。 指定代码段的架构版本。 Format 属性必须是语法x.x.x 中的字符串,其中每个x 属性都表示版本号的数值。 Visual Studio 忽略代码片段,其中包含它无法理解的格式属性。 |
展开表
子元素 | 描述 |
---|---|
Header 元素 | 必需 元素。 包含有关代码段的常规信息。 代码段中必须有且仅有一个 Header 元素。 |
Snippet 元素 | 必需 元素。 包含 Visual Studio 要插入的代码。 代码段中必须有且仅有一个 Snippet 元素。 |
展开表
父元素 | 描述 |
---|---|
CodeSnippets 元素 | 代码段 XML 架构的根元素。 |
CodeSnippets 元素
对 CodeSnippet 元素进行分组。 CodeSnippets
元素是代码段 XML 架构的根元素。
<CodeSnippets> <CodeSnippet>... </CodeSnippet> </CodeSnippets>
子元素 | 描述 |
---|---|
CodeSnippet 元素 | 可选元素。 所有代码段数据的父元素。 CodeSnippet 元素中可能有零个或零个以上的 CodeSnippets 元素。 |
Declarations 元素
指定作为某个代码段组成部分的文本和对象,你可以对该代码段进行编辑。
<Declarations> <Literal>... </Literal> <Object>... </Object> </Declarations>
子元素 | 描述 |
---|---|
Literal 元素 | 可选元素。 定义你可以编辑的代码段的文本。 Literal 元素中可能有零个或零个以上的 Declarations 元素。 |
Object 元素 | 可选元素。 定义你可以编辑的代码段的对象。 Object 元素中可能有零个或零个以上的 Declarations 元素。 |
展开表
父元素 | 描述 |
---|---|
Snippet 元素 | 包含用于代码段的引用、导入、声明和代码。 |