如何使用键绑定将任意一段文本包装在 Sublime Text 3 的缩进块中?
How can I wrap an arbitrary piece of text in an indented block in Sublime Text 3 using a keybinding?
假设我有:
doSomeAction()
并且我想用一些任意文本将其包装起来,以便缩进原始文本:
if myValue
doSomeAction()
end
理想情况下,我想突出显示我的行,按一些键绑定,并缩进原始文本,并将光标放在第一行,我将在其中键入 if myValue
(或其他任何内容) ).
我意识到这取决于我使用的编程语言,主要是关于 原始行之后的内容。在 Ruby 中,我需要 end
,在 Javascript 中,我需要 }
,而在 Coffeescript 中,我什么都不需要 :-) 我想如果它留空,这样我可以按 tab
到达那个位置,我可以自己输入需要的内容。
您可以为此创建一个片段。示例:
<snippet>
<content><![CDATA[
${1:if condition}
$SELECTION
${2:end}
]]></content>
</snippet>
重要说明:Whosebugs 显示此文本时带有空格,但请记住在片段中使用制表符缩进:请参阅此答案底部的 Tyler 编辑和评论。
如您所见,它可以有多个以 $
分隔位置开头的部分,您可以使用 tab
导航所有部分,这使您可以轻松更改条件的内容或添加额外的内容里面的内容。您可以轻松更改结构、添加或删除部分、内容、更改默认值等。
结果:
¿如何创建代码段?
使用菜单工具 > 新代码段,然后将给定的文件内容放入新文件中。使用(示例)文件名 wrap.sublime-snippet 将其保存在 sublime Packages/User 中。通常 Packages/User 是显示的默认文件夹,通常通过菜单 Preferences>Browse Packages.
打开 Packages 文件夹
¿如何添加快捷键?
转到菜单 Preferences > Key Bindings-user 并将您的键绑定添加到全局数组中,使用您喜欢的自由键组合并保存文件。如果你没有任何其他用户键绑定,这个文件内容应该是这样的(记得使用你给代码片段的名字):
[
{ "keys": ["ctrl+alt+z"], "command": "insert_snippet", "args": {"name": "Packages/User/wrap.sublime-snippet"}}
]
编辑:始终使用制表符在片段中缩进,如 recommended by Sublime Text help:
When writing a snippet that contains indentation, always use tabs. The
tabs will be transformed into spaces when the snippet is inserted if
the option translateTabsToSpaces is set to true.
假设我有:
doSomeAction()
并且我想用一些任意文本将其包装起来,以便缩进原始文本:
if myValue
doSomeAction()
end
理想情况下,我想突出显示我的行,按一些键绑定,并缩进原始文本,并将光标放在第一行,我将在其中键入 if myValue
(或其他任何内容) ).
我意识到这取决于我使用的编程语言,主要是关于 原始行之后的内容。在 Ruby 中,我需要 end
,在 Javascript 中,我需要 }
,而在 Coffeescript 中,我什么都不需要 :-) 我想如果它留空,这样我可以按 tab
到达那个位置,我可以自己输入需要的内容。
您可以为此创建一个片段。示例:
<snippet>
<content><![CDATA[
${1:if condition}
$SELECTION
${2:end}
]]></content>
</snippet>
重要说明:Whosebugs 显示此文本时带有空格,但请记住在片段中使用制表符缩进:请参阅此答案底部的 Tyler 编辑和评论。
如您所见,它可以有多个以 $
分隔位置开头的部分,您可以使用 tab
导航所有部分,这使您可以轻松更改条件的内容或添加额外的内容里面的内容。您可以轻松更改结构、添加或删除部分、内容、更改默认值等。
结果:
¿如何创建代码段?
使用菜单工具 > 新代码段,然后将给定的文件内容放入新文件中。使用(示例)文件名 wrap.sublime-snippet 将其保存在 sublime Packages/User 中。通常 Packages/User 是显示的默认文件夹,通常通过菜单 Preferences>Browse Packages.
打开 Packages 文件夹¿如何添加快捷键?
转到菜单 Preferences > Key Bindings-user 并将您的键绑定添加到全局数组中,使用您喜欢的自由键组合并保存文件。如果你没有任何其他用户键绑定,这个文件内容应该是这样的(记得使用你给代码片段的名字):
[
{ "keys": ["ctrl+alt+z"], "command": "insert_snippet", "args": {"name": "Packages/User/wrap.sublime-snippet"}}
]
编辑:始终使用制表符在片段中缩进,如 recommended by Sublime Text help:
When writing a snippet that contains indentation, always use tabs. The tabs will be transformed into spaces when the snippet is inserted if the option translateTabsToSpaces is set to true.