这似乎是世界上最基本的问题,但是如果我能找到答案,那该死的。
是否存在键盘快捷键(无论是Visual Studio本身还是通过Code Rush或其他第三方插件提供),可以用HTML标记包装当前选择内容?我已经厌倦了键入开始标记,将放错位置的结束标记剪切到剪贴板,移动光标并将其粘贴到其所属的末尾。
更新: 这是TextMate处理带有tag的选择的方式。坦白说,我很惊讶Visual Studio似乎没有类似的功能。为我可能想使用的每个可能的标签创建宏或代码段似乎很荒谬。
这似乎是世界上最基本的问题,但是如果我能找到答案,那该死的。
是否存在键盘快捷键(无论是Visual Studio本身还是通过Code Rush或其他第三方插件提供),可以用HTML标记包装当前选择内容?我已经厌倦了键入开始标记,将放错位置的结束标记剪切到剪贴板,移动光标并将其粘贴到其所属的末尾。
更新: 这是TextMate处理带有tag的选择的方式。坦白说,我很惊讶Visual Studio似乎没有类似的功能。为我可能想使用的每个可能的标签创建宏或代码段似乎很荒谬。
Answers:
Visual Studio 2015附带了一个新的快捷键Shift + Alt + W,该快捷键将当前选择内容包装为div。该快捷方式使文本“ div”保持选中状态,从而可以无缝更改为任何所需的标签。结合自动结束标签更换,可以快速解决问题。
此快捷方式在Visual Studio 2017中也可用,但是您必须安装“ ASP.NET和Web开发”工作负载。
Shift+Alt+W > p > Enter
我知道这很老了,您现在可能已经找到了答案,但是我想补充一下,因为那些可能不知道这在VS 2010中是可能的:
ctrl-k
ctrl-s
(或右键单击并选择Surround with...
。如果找不到所需的内容,则可以创建自己的SurroundsWith代码片段:
File
,然后单击New
,然后选择一种文件类型XML
。File
菜单上,单击Save
。Save as
框中,选择All Files (*.*)
。File name
框中,输入带有.snippet
文件扩展名的文件名。Save
。在XML文件中输入类似以下示例的内容:
<CodeSnippet Format="1.1.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<Header>
<Title>ul-div</Title>
<Author>Microsoft Corporation</Author>
<Shortcut>ul>li</Shortcut>
<Description>Wrap in a ul and then an li</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="html"><![CDATA[<ul><li>$selected$</li></ul>$end$]]></Code>
</Snippet>
</CodeSnippet>
Tools
> Code Snippets Manager
。Import
并浏览到刚刚创建的代码段。My HTML Snippets
并单击Finish
,然后单击确定OK
。然后,您将可以使用闪亮的新HTML代码段来打包内容!
Ctrl-X->类型标签-> Ctrl-V仍然是我在此答案中提到的最快的解决方案:https : //stackoverflow.com/a/5109994/486325。
如果安装了Web Essentials,则可以使用Shift + Alt + W用标记将所选内容括起来。
我知道这是一个古老的话题,但是遇到这个问题后,我终于开始自己动手做了,因为这是Google的第一批成果之一,我认为人们可能会发现这很有用。
实际上,这很容易,我只是从现有的HTML代码段中复制并在原义周围移动。下面的代码片段将包含一个通用HTML标记,它会提示您输入标记,并将其放入开始和结束标记中。
<CodeSnippet Format="1.1.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<!-- Generic HTML Snippet -->
<Header>
<Title>Html</Title>
<Author>Liam Slater</Author>
<Shortcut>h</Shortcut>
<Description>Markup snippet for HTML</Description>
<SnippetTypes>
<SnippetType>SurroundsWith</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>tag</ID>
<ToolTip>tag</ToolTip>
<Default></Default>
</Literal>
<Literal>
<ID>selected</ID>
<ToolTip>content</ToolTip>
<Default>content</Default>
</Literal>
</Declarations>
<Code Language="html"><![CDATA[<$tag$>$selected$</$tag$>$end$]]></Code>
</Snippet>
</CodeSnippet>
shift+alt+w
)的副本。
我什么都不知道,但是编写一个宏将其包装在所需的任何标签中都不难。我有一个类似的选择,可以将我的选择包装在一个区域块中。