Visual Studio 2015 年带有大量尾随空格的代码片段
Visual Studio 2015 Code Snippet with significant trailing whitespace
一段时间以来,我一直使用自定义 Visual Studio 代码片段来协助在我的 C# 源文件中注入版权 header。它看起来像这样:
<CodeSnippet Format="1.0.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<Header>
<Title>File Header</Title>
<Author>Me</Author>
<Shortcut>header</Shortcut>
<Description>Inserts a standard copyright header.</Description>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>FileName</ID>
<ToolTip>The name of the C# code file.</ToolTip>
<Default>FileName</Default>
</Literal>
</Declarations>
<Code Language="CSharp"><![CDATA[// -----------------------------------------------------------------------
// <copyright file="$FileName$.cs" company="Company Name">
// Copyright © 2011-2016 by Company Name. All rights reserved.
// </copyright>
// -----------------------------------------------------------------------
]]></Code>
</Snippet>
</CodeSnippet>
这个问题需要注意的重要一点是 CDATA 块末尾的两个结尾行。在 2015 年之前的 Visual Studio 版本中,我可以将光标放在文件的开头,就在第一个 using 声明之前,键入 header+TAB
,我的 header 会出现一个额外的最后一条评论和第一个 using 声明之间的空行。
Visual Studio 2015 似乎不遵守尾随空格。当我键入 header+TAB
时,第一个 using 声明与最后一个注释出现在同一行。
我是在查看错误,还是有什么方法可以配置我的代码片段,以便 Visual Studio 2015 会遵守尾随空格?
我在查看 VS 附带的代码片段时看到的常见情况是大多数代码以 $end$
结尾
开关示例:
<Code Language="csharp"><![CDATA[switch ($expression$) { $cases$ }*$end$*]]> </Code>
将 $end$
放在尾随空格的末尾,如下所示:
<![CDATA[// -----------------------------------------------------------------------
// <copyright file="$FileName$.cs" company="Company Name">
// Copyright © 2011-2016 by Company Name. All rights reserved.
// </copyright>
// -----------------------------------------------------------------------
$end$]]>
一段时间以来,我一直使用自定义 Visual Studio 代码片段来协助在我的 C# 源文件中注入版权 header。它看起来像这样:
<CodeSnippet Format="1.0.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<Header>
<Title>File Header</Title>
<Author>Me</Author>
<Shortcut>header</Shortcut>
<Description>Inserts a standard copyright header.</Description>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>FileName</ID>
<ToolTip>The name of the C# code file.</ToolTip>
<Default>FileName</Default>
</Literal>
</Declarations>
<Code Language="CSharp"><![CDATA[// -----------------------------------------------------------------------
// <copyright file="$FileName$.cs" company="Company Name">
// Copyright © 2011-2016 by Company Name. All rights reserved.
// </copyright>
// -----------------------------------------------------------------------
]]></Code>
</Snippet>
</CodeSnippet>
这个问题需要注意的重要一点是 CDATA 块末尾的两个结尾行。在 2015 年之前的 Visual Studio 版本中,我可以将光标放在文件的开头,就在第一个 using 声明之前,键入 header+TAB
,我的 header 会出现一个额外的最后一条评论和第一个 using 声明之间的空行。
Visual Studio 2015 似乎不遵守尾随空格。当我键入 header+TAB
时,第一个 using 声明与最后一个注释出现在同一行。
我是在查看错误,还是有什么方法可以配置我的代码片段,以便 Visual Studio 2015 会遵守尾随空格?
我在查看 VS 附带的代码片段时看到的常见情况是大多数代码以 $end$
开关示例:
<Code Language="csharp"><![CDATA[switch ($expression$) { $cases$ }*$end$*]]> </Code>
将 $end$
放在尾随空格的末尾,如下所示:
<![CDATA[// -----------------------------------------------------------------------
// <copyright file="$FileName$.cs" company="Company Name">
// Copyright © 2011-2016 by Company Name. All rights reserved.
// </copyright>
// -----------------------------------------------------------------------
$end$]]>