首页 > 解决方案 > SSMS Snippet - 多次使用 SurroundsWith 的选择

问题描述

我正在写一个 SSMS SurroundsWith 片段。我可以按预期使用 $selected$ 进行选择并用片段包围选择。我想用它来包围一个字段名并在片段中多次使用该字段名。如果我多次使用 $selected$,它只会将该字段粘贴到最终的 $selected$ 中。其他时间都是空的。有没有办法在 SSMS 片段中多次使用 $selected$?

例如,将字段的第一个字母大写的代码。

UPPER(LEFT(word,1))+LOWER(SUBSTRING(word,2,LEN(word))) AS NewName

在此示例中,我希望能够突出显示“单词”,选择我的 SurroundsWith 片段,并以这种方式填充此片段:

UPPER(LEFT($selected$,1))+LOWER(SUBSTRING($selected$,2,LEN($selected$))) AS $end$

我可以插入一个片段,然后手动添加该字段 3 次,但如果我可以创建一个片段,根据片段的指示多次添加突出显示的字段,那将会很方便。我的手永远不必离开键盘,并且光标已放置并准备好使用该字段的新名称。

标签: sql-serverssmscode-snippets

解决方案


的目的SurroundsWith是片段文本将完全围绕您$selected$在查询编辑器中的文本。由于您只能选择一段文本,因此支持多个这样的标记是没有意义的。

我知道您的用例与他们的意图不同,但这并不会使他们的意图变得奇怪。这只是意味着他们没有预料到您的用例(并且可能会说它更适合Expansion无论如何)。

所以,就目前而言,我建议您使用Expansion并放弃您可以先突出显示文本的想法(因为两种片段类型都无法满足您的需求)。这意味着您只需插入带有多个标记的片段,输入您想要的单词$selected$一次,然后填写其余标记。不理想,但并不比你的目标难多少。

您可以提交解释您的用例的反馈并请求其他类型的代码段(或扩展,没有双关语,对SurroundsWith功能):


推荐阅读